diff options
-rw-r--r-- | engines/composer/composer.cpp | 5 | ||||
-rw-r--r-- | engines/composer/detection.cpp | 2 |
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) { |