summaryrefslogtreecommitdiff
path: root/src/network/network_client.cpp
diff options
context:
space:
mode:
authorrubidium42 <rubidium@openttd.org>2021-05-29 20:22:41 +0200
committerrubidium42 <rubidium42@users.noreply.github.com>2021-05-30 00:01:49 +0200
commite3c9ed4d151a021e3f10492744915fc15b0bc0d6 (patch)
treeec0b575211cfbeee72a96b74d3b04d7a2063adcd /src/network/network_client.cpp
parent806f78aa04155c667f9f2090f54898d5f66c3144 (diff)
downloadopenttd-e3c9ed4d151a021e3f10492744915fc15b0bc0d6.tar.xz
Codechange: [Network] Use std::string to determine an unique name for clients
Diffstat (limited to 'src/network/network_client.cpp')
-rw-r--r--src/network/network_client.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/network/network_client.cpp b/src/network/network_client.cpp
index ae483508a..34129ad76 100644
--- a/src/network/network_client.cpp
+++ b/src/network/network_client.cpp
@@ -1358,9 +1358,8 @@ void NetworkUpdateClientName(const std::string &client_name)
MyClient::SendSetName(client_name);
} else {
/* Copy to a temporary buffer so no #n gets added after our name in the settings when there are duplicate names. */
- char temporary_name[NETWORK_CLIENT_NAME_LENGTH];
- strecpy(temporary_name, client_name.c_str(), lastof(temporary_name));
- if (NetworkFindName(temporary_name, lastof(temporary_name))) {
+ std::string temporary_name = client_name;
+ if (NetworkMakeClientNameUnique(temporary_name)) {
NetworkTextMessage(NETWORK_ACTION_NAME_CHANGE, CC_DEFAULT, false, ci->client_name, temporary_name);
ci->client_name = temporary_name;
NetworkUpdateClientInfo(CLIENT_ID_SERVER);