summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map/clif.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/map/clif.c b/src/map/clif.c
index eba0229ed..811f3bde0 100644
--- a/src/map/clif.c
+++ b/src/map/clif.c
@@ -9806,11 +9806,13 @@ void clif_parse_NpcStringInput(int fd,struct map_session_data *sd)
if(message_len >= sizeof(sd->npc_str)){
ShowWarning("clif: input string too long !\n");
message_len = sizeof(sd->npc_str);
+ } else {
+ message_len += 1; // Null character
}
// Exploit prevention if crafted packets (without null) is being sent. [Lance]
memcpy(sd->npc_str,RFIFOP(fd,8),message_len);
- sd->npc_str[message_len]=0;
+ sd->npc_str[message_len-1]=0;
npc_scriptcont(sd,RFIFOL(fd,4));
}