Skip to content

Commit

Permalink
SCI32: Set a savegame description if none was entered
Browse files Browse the repository at this point in the history
This fixes the the SCI32 incarnation of Trac#5343
(defect#3061964): Savegames with no name can't be restored
  • Loading branch information
tsoliman committed May 5, 2017
1 parent 8d94a04 commit f30f34c
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions engines/sci/engine/guest_additions.cpp
Expand Up @@ -429,7 +429,10 @@ reg_t GuestAdditions::promptSaveRestoreDefault(EngineState *s, int argc, reg_t *
descriptionId = argv[0];
}
SciArray &description = *_segMan->lookupArray(descriptionId);
description.fromString(dialog.getResultString());
Common::String descriptionString = dialog.getResultString();
if (descriptionString.empty())
descriptionString = dialog.createDefaultSaveDescription(saveNo - 1);
description.fromString(descriptionString);
}
} else {
if (s->_delayedRestoreGameId != -1) {
Expand Down Expand Up @@ -463,7 +466,10 @@ reg_t GuestAdditions::promptSaveRestoreTorin(EngineState *s, int argc, reg_t *ar
reg_t descriptionId = s->variables[VAR_LOCAL][1];
reg_t dataId;
SciArray &description = *_segMan->allocateArray(kArrayTypeString, 0, &dataId);
description.fromString(dialog.getResultString());
Common::String descriptionString = dialog.getResultString();
if (descriptionString.empty())
descriptionString = dialog.createDefaultSaveDescription(saveNo - 1);
description.fromString(descriptionString);
writeSelector(_segMan, descriptionId, SELECTOR(data), dataId);
}
} else {
Expand Down

0 comments on commit f30f34c

Please sign in to comment.