diff options
author | rubidium <rubidium@openttd.org> | 2013-06-27 19:23:23 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2013-06-27 19:23:23 +0000 |
commit | 5d37e21d04391ab985744aff9ccb4e159d27d82d (patch) | |
tree | 4a0ae179e69e3d0d9dbfdcd7eab0497916ce5375 /src/script/api/script_town.cpp | |
parent | 928df8163afec53678de98ddee71f5bb2a0e4fed (diff) | |
download | openttd-5d37e21d04391ab985744aff9ccb4e159d27d82d.tar.xz |
(svn r25486) -Fix [FS#5613-ish]: missing length validation for town and president names in script APIs
Diffstat (limited to 'src/script/api/script_town.cpp')
-rw-r--r-- | src/script/api/script_town.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/script/api/script_town.cpp b/src/script/api/script_town.cpp index fa4b9c0c7..5ade6f40f 100644 --- a/src/script/api/script_town.cpp +++ b/src/script/api/script_town.cpp @@ -46,6 +46,7 @@ const char *encoded_text = text->GetEncodedText(); EnforcePreconditionEncodedText(false, encoded_text); EnforcePrecondition(false, IsValidTown(town_id)); + EnforcePreconditionCustomError(false, ::Utf8StringLength(encoded_text) < MAX_LENGTH_TOWN_NAME_CHARS, ScriptError::ERR_PRECONDITION_STRING_TOO_LONG); return ScriptObject::DoCommand(::Town::Get(town_id)->xy, town_id, 0, CMD_TOWN_SET_TEXT, encoded_text); } |