aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/composer/composer.cpp5
-rw-r--r--engines/composer/detection.cpp2
2 files changed, 5 insertions, 2 deletions
diff --git a/engines/composer/composer.cpp b/engines/composer/composer.cpp
index e9a91b1a25..e5b42361eb 100644
--- a/engines/composer/composer.cpp
+++ b/engines/composer/composer.cpp
@@ -169,7 +169,10 @@ Common::Error ComposerEngine::run() {
} else if (_needsUpdate) {
redraw();
}
-
+ if (ConfMan.hasKey("save_slot")) {
+ loadGameState(ConfMan.getInt("save_slot"));
+ ConfMan.removeKey("save_slot", Common::ConfigManager::kTransientDomain);
+ }
while (_eventMan->pollEvent(event)) {
switch (event.type) {
case Common::EVENT_LBUTTONDOWN:
diff --git a/engines/composer/detection.cpp b/engines/composer/detection.cpp
index bd0c4323fe..8de3b33134 100644
--- a/engines/composer/detection.cpp
+++ b/engines/composer/detection.cpp
@@ -464,7 +464,7 @@ bool ComposerMetaEngine::createInstance(OSystem *syst, Engine **engine, const AD
}
bool ComposerMetaEngine::hasFeature(MetaEngineFeature f) const {
- return (f == kSupportsListSaves);
+ return ((f == kSupportsListSaves) || (f == kSupportsLoadingDuringStartup));
}
Common::String getSaveName(Common::InSaveFile *in) {