[Scummvm-cvs-logs] CVS: residual blocky16.cpp,1.12,1.13

Joost Peters joostp at users.sourceforge.net
Tue Apr 27 16:29:01 CEST 2004


Update of /cvsroot/scummvm/residual
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4066

Modified Files:
	blocky16.cpp 
Log Message:
Add out-of-bounds check in crashing smush case.  would be interesting to see if it also triggers on x86.


Index: blocky16.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/blocky16.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- blocky16.cpp	22 Apr 2004 13:41:14 -0000	1.12
+++ blocky16.cpp	27 Apr 2004 23:27:53 -0000	1.13
@@ -381,6 +381,8 @@
 		}
 		tmp2 += _offset1;
 		for (i = 0; i < 4; i++) {
+			if ((tmp2 + (d_dst - _deltaBuf) > _deltaSize))
+				error("Reading %d bytes out-of-bounds in Blocky16::level2()", (tmp2 + (d_dst - _deltaBuf)) - _deltaSize);
 			*(uint32 *)(d_dst +  0) = *(uint32 *)(d_dst + tmp2 +  0);
 			*(uint32 *)(d_dst +  4) = *(uint32 *)(d_dst + tmp2 +  4);
 			d_dst += _d_pitch;





More information about the Scummvm-git-logs mailing list