[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
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/sword1 music.cpp,1.22,1.23
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm/imuse_digi dimuse.cpp,1.28,1.29 dimuse.h,1.17,1.18 dimuse_music.cpp,1.3,1.4 dimuse_sndmgr.cpp,1.20,1.21 dimuse_sndmgr.h,1.14,1.15 dimuse_tables.cpp,1.6,1.7
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
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);
- Previous message: [Scummvm-cvs-logs] CVS: scummvm/sword1 music.cpp,1.22,1.23
- Next message: [Scummvm-cvs-logs] CVS: scummvm/scumm/imuse_digi dimuse.cpp,1.28,1.29 dimuse.h,1.17,1.18 dimuse_music.cpp,1.3,1.4 dimuse_sndmgr.cpp,1.20,1.21 dimuse_sndmgr.h,1.14,1.15 dimuse_tables.cpp,1.6,1.7
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Scummvm-git-logs
mailing list