[Scummvm-cvs-logs] SF.net SVN: scummvm:[39906] scummvm/trunk/engines/saga/saveload.cpp

eriktorbjorn at users.sourceforge.net eriktorbjorn at users.sourceforge.net
Thu Apr 9 17:59:22 CEST 2009


Revision: 39906
          http://scummvm.svn.sourceforge.net/scummvm/?rev=39906&view=rev
Author:   eriktorbjorn
Date:     2009-04-09 15:59:22 +0000 (Thu, 09 Apr 2009)

Log Message:
-----------
Sort the list of savegames. (I suppose this fix, or a better one, should go
into 0.13.1 as well.)

Modified Paths:
--------------
    scummvm/trunk/engines/saga/saveload.cpp

Modified: scummvm/trunk/engines/saga/saveload.cpp
===================================================================
--- scummvm/trunk/engines/saga/saveload.cpp	2009-04-09 08:49:42 UTC (rev 39905)
+++ scummvm/trunk/engines/saga/saveload.cpp	2009-04-09 15:59:22 UTC (rev 39906)
@@ -106,6 +106,19 @@
 	error("getNewSaveSlotNumber save list is full");
 }
 
+static int compareSaveFileData(const void *a, const void *b) {
+	const SaveFileData *s1 = (const SaveFileData *)a;
+	const SaveFileData *s2 = (const SaveFileData *)b;
+
+	if (s1->slotNumber < s2->slotNumber) {
+		return -1;
+	} else if (s1->slotNumber > s2->slotNumber) {
+		return 1;
+	} else {
+		return 0;
+	}
+}
+
 void SagaEngine::fillSaveList() {
 
 	int i;
@@ -155,6 +168,8 @@
 			}
 		}
 	}
+
+	qsort(_saveFiles, _saveFilesCount, sizeof(_saveFiles[0]), compareSaveFileData);
 }
 
 void SagaEngine::save(const char *fileName, const char *saveName) {


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