[Scummvm-cvs-logs] CVS: scummvm/sky disk.cpp,1.38,1.39

Robert G?ffringmann lavosspawn at users.sourceforge.net
Fri Jul 11 11:57:22 CEST 2003


Update of /cvsroot/scummvm/scummvm/sky
In directory sc8-pr-cvs1:/tmp/cvs-serv1963/sky

Modified Files:
	disk.cpp 
Log Message:
big endian fix

Index: disk.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/disk.cpp,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -d -r1.38 -r1.39
--- disk.cpp	8 Jul 2003 22:08:29 -0000	1.38
+++ disk.cpp	11 Jul 2003 18:56:57 -0000	1.39
@@ -178,16 +178,13 @@
 		else {
 #ifdef SCUMM_BIG_ENDIAN
 			// Convert dataFileHeader to BE (it only consists of 16 bit words)
-			for (uint i = 0; i < sizeof(struct dataFileHeader); i+=2) {
-				*(uint16 *)outputPtr = READ_LE_UINT16(inputPtr);
-				inputPtr += 2;
-				outputPtr += 2;
-			}
-#else
+			uint16 *headPtr = (uint16 *)_fileDest;
+			for (uint i = 0; i < sizeof(struct dataFileHeader) / 2; i++)
+				*(headPtr + i) = READ_LE_UINT16(headPtr + i);
+#endif
 			memcpy(outputPtr, inputPtr, sizeof(struct dataFileHeader));
 			inputPtr += sizeof(struct dataFileHeader);
 			outputPtr += sizeof(struct dataFileHeader);
-#endif
 		}
 
 		RncDecoder rncDecoder;
@@ -198,7 +195,7 @@
 		if (unPackLen == 0) { //Unpack returned 0: file was probably not packed.
 			if (_fixedDest == NULL)
 				free(_compDest);
-			
+
 			return _fileDest;
 		}
 





More information about the Scummvm-git-logs mailing list