[Scummvm-cvs-logs] CVS: scummvm/scumm/imuse_digi dimuse_bndmgr.cpp,1.13,1.14

Pawel Kolodziejski aquadran at users.sourceforge.net
Wed Jan 14 13:48:00 CET 2004


Update of /cvsroot/scummvm/scummvm/scumm/imuse_digi
In directory sc8-pr-cvs1:/tmp/cvs-serv29070

Modified Files:
	dimuse_bndmgr.cpp 
Log Message:
fixed bundle decompression for some case

Index: dimuse_bndmgr.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/imuse_digi/dimuse_bndmgr.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- dimuse_bndmgr.cpp	9 Jan 2004 13:16:06 -0000	1.13
+++ dimuse_bndmgr.cpp	14 Jan 2004 21:46:58 -0000	1.14
@@ -198,24 +198,15 @@
 		_compTableLoaded = true;
 	}
 
-	if (header_outside) {
-		first_block = offset / 0x2000;
-		last_block = (offset + size - 1) / 0x2000;
-	} else {
-		first_block = (offset + header_size) / 0x2000;
-		last_block = (offset + size + header_size - 1) / 0x2000;
-	}
+	first_block = (offset + header_size) / 0x2000;
+	last_block = (offset + size + header_size - 1) / 0x2000;
 
 	comp_output = (byte *)malloc(0x2000);
 	int32 blocks_final_size = 0x2000 * (1 + last_block - first_block);
 	*comp_final = (byte *)malloc(blocks_final_size);
 	final_size = 0;
 
-	if (header_outside) {
-		skip = offset - (first_block * 0x2000);
-	} else {
-		skip = offset - (first_block * 0x2000) + header_size;
-	}
+	skip = offset - (first_block * 0x2000) + header_size;
 
 	for (i = first_block; i <= last_block; i++) {
 		byte *curBuf;
@@ -239,8 +230,6 @@
 		}
 
 		if (header_outside) {
-			if ((header_size != 0) && (i == 0))
-				skip += header_size;
 			output_size -= skip;
 		} else {
 			if ((header_size != 0) && (skip >= header_size))
@@ -250,8 +239,7 @@
 		if (output_size > size)
 			output_size = size;
 
-		if (final_size + output_size > blocks_final_size)
-			error("");
+		assert(final_size + output_size <= blocks_final_size);
 
 		memcpy(*comp_final + final_size, curBuf + skip, output_size);
 





More information about the Scummvm-git-logs mailing list