From 978460ff7aba0f04502b278976a435cd18564f18 Mon Sep 17 00:00:00 2001 From: divverent Date: Sat, 16 May 2009 17:05:41 +0000 Subject: [PATCH] print something on "name" length overflow git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@8967 d7cf8633-e32d-0410-b094-e92efae38249 --- host_cmd.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/host_cmd.c b/host_cmd.c index ccf6c5bc..ea1235ad 100644 --- a/host_cmd.c +++ b/host_cmd.c @@ -987,22 +987,29 @@ void Host_Name_f (void) { int i, j; qboolean valid_colors; + const char *newNameSource; char newName[sizeof(host_client->name)]; if (Cmd_Argc () == 1) { - Con_Printf("\"name\" is \"%s\"\n", cl_name.string); + Con_Printf("name: %s\n", cl_name.string); return; } if (Cmd_Argc () == 2) - strlcpy (newName, Cmd_Argv(1), sizeof (newName)); + newNameSource = Cmd_Argv(i); else - strlcpy (newName, Cmd_Args(), sizeof (newName)); + newNameSource = Cmd_Args(); if (cmd_source == src_command) { + strlcpy(newName, newNameSource, sizeof(newName)); Cvar_Set ("_cl_name", newName); + if (strlen(newNameSource) >= sizeof(newName)) // overflowed + { + Con_Printf("Your name is longer than %i chars! It has been truncated.\n", sizeof(newName) - 1); + Con_Printf("name: %s\n", cl_name.string); + } return; } -- 2.39.2