aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/kfile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/sci/engine/kfile.cpp')
-rw-r--r--engines/sci/engine/kfile.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/engines/sci/engine/kfile.cpp b/engines/sci/engine/kfile.cpp
index 49ad4caedb..25483b6507 100644
--- a/engines/sci/engine/kfile.cpp
+++ b/engines/sci/engine/kfile.cpp
@@ -338,7 +338,7 @@ reg_t kFileIOOpen(EngineState *s, int argc, reg_t *argv) {
score = Common::String::format("%u%03u", save.highScore, save.lowScore);
}
- const uint nameLength = strlen(save.name);
+ const uint nameLength = Common::strnlen(save.name, SCI_MAX_SAVENAME_LENGTH);
const uint size = nameLength + /* \r\n */ 2 + score.size();
char *buffer = (char *)malloc(size);
memcpy(buffer, save.name, nameLength);
@@ -372,7 +372,7 @@ reg_t kFileIOOpen(EngineState *s, int argc, reg_t *argv) {
fillSavegameDesc(g_sci->getSavegameName(saveNo), &save);
const Common::String avatarId = Common::String::format("%02d", save.avatarId);
- const uint nameLength = strlen(save.name);
+ const uint nameLength = Common::strnlen(save.name, SCI_MAX_SAVENAME_LENGTH);
const uint size = nameLength + /* \r\n */ 2 + avatarId.size() + 1;
char *buffer = (char *)malloc(size);
memcpy(buffer, save.name, nameLength);