summaryrefslogtreecommitdiff
path: root/src/saveload/saveload.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2009-03-06 01:23:25 +0000
committerrubidium <rubidium@openttd.org>2009-03-06 01:23:25 +0000
commit86ca408d469811d13a15d5c7a671feda38126eb0 (patch)
tree8972c2c7b9b1ab7c2b41b46cd9a44f1bb0fbd9bd /src/saveload/saveload.cpp
parentc3a7e6b693716232fd2aefab3f36bd555620b563 (diff)
downloadopenttd-86ca408d469811d13a15d5c7a671feda38126eb0.tar.xz
(svn r15626) -Fix [FS#2698]: UTF8 string handling could cause buffer overruns.
Diffstat (limited to 'src/saveload/saveload.cpp')
-rw-r--r--src/saveload/saveload.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/saveload/saveload.cpp b/src/saveload/saveload.cpp
index 31f3b3c2d..390f36b3c 100644
--- a/src/saveload/saveload.cpp
+++ b/src/saveload/saveload.cpp
@@ -33,6 +33,7 @@
#include "../statusbar_gui.h"
#include "../fileio_func.h"
#include "../gamelog.h"
+#include "../string_func.h"
#include "table/strings.h"
@@ -631,6 +632,7 @@ static void SlString(void *ptr, size_t length, VarType conv)
}
((char*)ptr)[len] = '\0'; // properly terminate the string
+ str_validate((char*)ptr, (char*)ptr + len);
}
}