[Scummvm-cvs-logs] SF.net SVN: scummvm:[48519] scummvm/trunk/engines/sci/engine/seg_manager. cpp

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Sun Apr 4 22:47:03 CEST 2010


Revision: 48519
          http://scummvm.svn.sourceforge.net/scummvm/?rev=48519&view=rev
Author:   m_kiewitz
Date:     2010-04-04 20:47:03 +0000 (Sun, 04 Apr 2010)

Log Message:
-----------
SCI: check before writing 0 in SegManager::strncpy, fixes jones/cd crash

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/seg_manager.cpp

Modified: scummvm/trunk/engines/sci/engine/seg_manager.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/seg_manager.cpp	2010-04-04 19:10:22 UTC (rev 48518)
+++ scummvm/trunk/engines/sci/engine/seg_manager.cpp	2010-04-04 20:47:03 UTC (rev 48519)
@@ -635,6 +635,7 @@
 		return;
 	}
 
+
 	if (dest_r.isRaw) {
 		// raw -> raw
 		if (n == 0xFFFFFFFFU)
@@ -649,7 +650,8 @@
 				break;
 		}
 		// Put an ending NUL to terminate the string
-		setChar(dest_r, n, 0);
+		if ((size_t)dest_r.maxSize > n)
+			setChar(dest_r, n, 0);
 	}
 }
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list