aboutsummaryrefslogtreecommitdiff
path: root/engines/dreamweb/detection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/dreamweb/detection.cpp')
-rw-r--r--engines/dreamweb/detection.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/engines/dreamweb/detection.cpp b/engines/dreamweb/detection.cpp
index 01cfc7e506..8e24c44702 100644
--- a/engines/dreamweb/detection.cpp
+++ b/engines/dreamweb/detection.cpp
@@ -23,6 +23,7 @@
#include "base/plugins.h"
#include "common/algorithm.h"
+#include "common/savefile.h"
#include "common/system.h"
#include "common/translation.h"
@@ -70,8 +71,8 @@ public:
AdvancedMetaEngine(DreamWeb::gameDescriptions,
sizeof(DreamWeb::DreamWebGameDescription), dreamWebGames,
gameGuiOptions) {
- _singleid = "dreamweb";
- _guioptions = GUIO1(GUIO_NOMIDI);
+ _singleId = "dreamweb";
+ _guiOptions = GUIO1(GUIO_NOMIDI);
}
virtual const char *getName() const {
@@ -127,8 +128,7 @@ bool DreamWebMetaEngine::createInstance(OSystem *syst, Engine **engine, const AD
SaveStateList DreamWebMetaEngine::listSaves(const char *target) const {
Common::SaveFileManager *saveFileMan = g_system->getSavefileManager();
- Common::StringArray files = saveFileMan->listSavefiles("DREAMWEB.D??");
- Common::sort(files.begin(), files.end());
+ Common::StringArray files = saveFileMan->listSavefiles("DREAMWEB.D##");
SaveStateList saveList;
for (uint i = 0; i < files.size(); ++i) {
@@ -146,6 +146,8 @@ SaveStateList DreamWebMetaEngine::listSaves(const char *target) const {
saveList.push_back(sd);
}
+ // Sort saves based on slot number.
+ Common::sort(saveList.begin(), saveList.end(), SaveStateDescriptorSlotComparator());
return saveList;
}