aboutsummaryrefslogtreecommitdiff
path: root/engines/groovie
diff options
context:
space:
mode:
authorD G Turner2018-11-03 17:46:57 +0000
committerDavid Turner2018-11-05 04:28:51 +0000
commitf66ec9fe21cbebdf651a65417519acb5dfca2ee4 (patch)
tree99dfe4a493e7e38f95aa299bd871c1ef27382d8e /engines/groovie
parent63f0d47b99482e52d9c29c50cb0f1ba43d13c141 (diff)
downloadscummvm-rg350-f66ec9fe21cbebdf651a65417519acb5dfca2ee4.tar.gz
scummvm-rg350-f66ec9fe21cbebdf651a65417519acb5dfca2ee4.tar.bz2
scummvm-rg350-f66ec9fe21cbebdf651a65417519acb5dfca2ee4.zip
GROOVIE: Fix Spaces in Savegame Naming.
This patch was originally from bug Trac #6276 and was submitted by bluegr.
Diffstat (limited to 'engines/groovie')
-rw-r--r--engines/groovie/saveload.cpp1
-rw-r--r--engines/groovie/script.cpp4
2 files changed, 4 insertions, 1 deletions
diff --git a/engines/groovie/saveload.cpp b/engines/groovie/saveload.cpp
index fb4e365294..3288798ef3 100644
--- a/engines/groovie/saveload.cpp
+++ b/engines/groovie/saveload.cpp
@@ -128,6 +128,7 @@ Common::InSaveFile *SaveLoad::openForLoading(const Common::String &target, int s
case 0:
break;
case 16: // @
+ case 254: // . (generated when pressing space)
c = ' ';
break;
case 244: // $
diff --git a/engines/groovie/script.cpp b/engines/groovie/script.cpp
index b68c41831e..c66f0f597c 100644
--- a/engines/groovie/script.cpp
+++ b/engines/groovie/script.cpp
@@ -439,9 +439,11 @@ void Script::savegame(uint slot) {
// Cache the saved name
for (int i = 0; i < 15; i++) {
newchar = _variables[i] + 0x30;
- if ((newchar < 0x30 || newchar > 0x39) && (newchar < 0x41 || newchar > 0x7A)) {
+ if ((newchar < 0x30 || newchar > 0x39) && (newchar < 0x41 || newchar > 0x7A) && newchar != 0x2E) {
save[i] = '\0';
break;
+ } else if (newchar == 0x2E) { // '.', generated when space is pressed
+ save[i] = ' ';
} else {
save[i] = newchar;
}