[Scummvm-cvs-logs] CVS: scummvm/gob game.cpp,1.13,1.14

Joost Peters joostp at users.sourceforge.net
Mon Apr 11 03:56:19 CEST 2005


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

Modified Files:
	game.cpp 
Log Message:
convert some struct members - unfortunately we can't currently allocate memory and read the struct in "the proper way", as the engine still addresses data beyond it


Index: game.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/gob/game.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -d -r1.13 -r1.14
--- game.cpp	10 Apr 2005 17:13:16 -0000	1.13
+++ game.cpp	11 Apr 2005 10:55:22 -0000	1.14
@@ -1790,6 +1790,14 @@
 				game_totTextData =
 				    (Game_TotTextTable *) (curPtr +
 				    READ_LE_UINT32((char *)game_totFileData + 0x30));
+				
+				game_totTextData->itemsCount = (int16)READ_LE_UINT16(&game_totTextData->itemsCount);
+
+				for (i = 0; i < game_totTextData->itemsCount; ++i) {
+					game_totTextData->items[i].offset = (int16)READ_LE_UINT16(&game_totTextData->items[i].offset);
+					game_totTextData->items[i].size = (int16)READ_LE_UINT16(&game_totTextData->items[i].size);
+				}
+				
 				needTextFree = 0;
 			}
 
@@ -1800,6 +1808,16 @@
 				game_totResourceTable = 
 					(Game_TotResTable *)(curPtr +
 				    READ_LE_UINT32((char *)game_totFileData + 0x34));
+				
+				game_totResourceTable->itemsCount = (int16)READ_LE_UINT16(&game_totResourceTable->itemsCount);
+				
+				for (i = 0; i < game_totResourceTable->itemsCount; ++i) {
+					game_totResourceTable->items[i].offset = (int32)READ_LE_UINT32(&game_totResourceTable->items[i].offset);
+					game_totResourceTable->items[i].size = (int16)READ_LE_UINT16(&game_totResourceTable->items[i].size);
+					game_totResourceTable->items[i].width = (int16)READ_LE_UINT16(&game_totResourceTable->items[i].width);
+					game_totResourceTable->items[i].height = (int16)READ_LE_UINT16(&game_totResourceTable->items[i].height);
+				}
+				
 				needFreeResTable = 0;
 			}
 





More information about the Scummvm-git-logs mailing list