[Scummvm-cvs-logs] CVS: scummvm/sky compact.cpp,1.38.2.2,1.38.2.3
Joost Peters
joostp at users.sourceforge.net
Sat Feb 4 06:09:05 CET 2006
Update of /cvsroot/scummvm/scummvm/sky
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27228/sky
Modified Files:
Tag: branch-0-8-0
compact.cpp
Log Message:
backport sky.cpt size check
Index: compact.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/compact.cpp,v
retrieving revision 1.38.2.2
retrieving revision 1.38.2.3
diff -u -d -r1.38.2.2 -r1.38.2.3
--- compact.cpp 18 Jan 2006 18:07:35 -0000 1.38.2.2
+++ compact.cpp 4 Feb 2006 14:08:25 -0000 1.38.2.3
@@ -27,6 +27,8 @@
namespace Sky {
+#define SKY_CPT_SIZE 419427
+
#define OFFS(type,item) (((long)(&((type*)0)->item)))
#define MK32(type,item) OFFS(type, item),0,0,0
#define MK16(type,item) OFFS(type, item),0
@@ -130,6 +132,12 @@
if (fileVersion != 0)
error("unknown \"sky.cpt\" version");
+ if (SKY_CPT_SIZE != _cptFile->size()) {
+ GUI::MessageDialog dialog("The \"sky.cpt\" file has an incorrect size.\nPlease (re)download it from www.scummvm.org", "OK", NULL);
+ dialog.runModal();
+ error("Incorrect sky.cpt size (%d, expected: %d)", _cptFile->size(), SKY_CPT_SIZE);
+ }
+
// set the necessary data structs up...
_numDataLists = _cptFile->readUint16LE();
_cptNames = (char***)malloc(_numDataLists * sizeof(char**));
More information about the Scummvm-git-logs
mailing list