[Scummvm-cvs-logs] SF.net SVN: scummvm:[43473] scummvm/trunk/engines/kyra/sequences_lok.cpp

lordhoto at users.sourceforge.net lordhoto at users.sourceforge.net
Mon Aug 17 14:22:15 CEST 2009


Revision: 43473
          http://scummvm.svn.sourceforge.net/scummvm/?rev=43473&view=rev
Author:   lordhoto
Date:     2009-08-17 12:22:15 +0000 (Mon, 17 Aug 2009)

Log Message:
-----------
Cleanup: don't copy the Kyrandia 1 Amiga credits data in a temporary buffer, and thus keeping it twice in memory.

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/sequences_lok.cpp

Modified: scummvm/trunk/engines/kyra/sequences_lok.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sequences_lok.cpp	2009-08-17 11:53:52 UTC (rev 43472)
+++ scummvm/trunk/engines/kyra/sequences_lok.cpp	2009-08-17 12:22:15 UTC (rev 43473)
@@ -1354,15 +1354,12 @@
 	}
 
 	int size = 0;
-	const uint8 *bufferTmp = _staticres->loadRawData(k1CreditsStrings, size);
-	char *buffer = new char[size];
-	assert(buffer);
-	memcpy(buffer, bufferTmp, size);
+	const char *creditsData = (const char *)_staticres->loadRawData(k1CreditsStrings, size);
 
 	char stringBuffer[81];
 	memset(stringBuffer, 0, sizeof(stringBuffer));
 
-	char *cur = buffer;
+	const char *cur = creditsData;
 	char *specialString = stringBuffer;
 	bool fillRectFlag = false, subWidth = false, centerFlag = false;
 	x = 0;
@@ -1424,9 +1421,7 @@
 			removeInputTop();
 			break;
 		}
-	} while (++cur != buffer + size && !shouldQuit());
-
-	delete[] buffer;
+	} while (++cur != (creditsData + size) && !shouldQuit());
 }
 
 bool KyraEngine_LoK::seq_skipSequence() const {


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list