changeset 16680:bca115ac3348 draft

(svn r21411) -Codechange: limit group name by amount of characters, not bytes
author rubidium <rubidium@openttd.org>
date Sun, 05 Dec 2010 22:24:34 +0000
parents 07ae81d6312a
children 3a1ac9bae6cc
files src/ai/api/ai_group.cpp src/group_cmd.cpp src/group_gui.cpp src/group_type.h
diffstat 4 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/ai/api/ai_group.cpp
+++ b/src/ai/api/ai_group.cpp
@@ -52,7 +52,7 @@
 {
 	EnforcePrecondition(false, IsValidGroup(group_id));
 	EnforcePrecondition(false, !::StrEmpty(name));
-	EnforcePreconditionCustomError(false, ::strlen(name) < MAX_LENGTH_GROUP_NAME_BYTES, AIError::ERR_PRECONDITION_STRING_TOO_LONG);
+	EnforcePreconditionCustomError(false, ::Utf8StringLength(name) < MAX_LENGTH_GROUP_NAME_CHARS, AIError::ERR_PRECONDITION_STRING_TOO_LONG);
 
 	return AIObject::DoCommand(0, group_id, 0, CMD_RENAME_GROUP, name);
 }
--- a/src/group_cmd.cpp
+++ b/src/group_cmd.cpp
@@ -181,7 +181,7 @@
 	bool reset = StrEmpty(text);
 
 	if (!reset) {
-		if (strlen(text) >= MAX_LENGTH_GROUP_NAME_BYTES) return CMD_ERROR;
+		if (Utf8StringLength(text) >= MAX_LENGTH_GROUP_NAME_CHARS) return CMD_ERROR;
 		if (!IsUniqueGroupName(text)) return_cmd_error(STR_ERROR_NAME_MUST_BE_UNIQUE);
 	}
 
--- a/src/group_gui.cpp
+++ b/src/group_gui.cpp
@@ -625,7 +625,7 @@
 			SetDParam(0, group);
 			str = STR_GROUP_NAME;
 		}
-		ShowQueryString(str, STR_GROUP_RENAME_CAPTION, MAX_LENGTH_GROUP_NAME_BYTES, MAX_LENGTH_GROUP_NAME_PIXELS, this, CS_ALPHANUMERAL, QSF_ENABLE_DEFAULT);
+		ShowQueryString(str, STR_GROUP_RENAME_CAPTION, MAX_LENGTH_GROUP_NAME_CHARS, MAX_LENGTH_GROUP_NAME_PIXELS, this, CS_ALPHANUMERAL, QSF_ENABLE_DEFAULT | QSF_LEN_IN_CHARS);
 	}
 
 	/**
--- a/src/group_type.h
+++ b/src/group_type.h
@@ -18,7 +18,7 @@
 static const GroupID DEFAULT_GROUP = 0xFFFE; ///< ungrouped vehicles are in this group.
 static const GroupID INVALID_GROUP = 0xFFFF;
 
-static const uint MAX_LENGTH_GROUP_NAME_BYTES  =  31; ///< The maximum length of a group name in bytes including '\0'
+static const uint MAX_LENGTH_GROUP_NAME_CHARS  =  31; ///< The maximum length of a group name in characters including '\0'
 static const uint MAX_LENGTH_GROUP_NAME_PIXELS = 150; ///< The maximum length of a group name in pixels
 
 struct Group;