From d2f88f0450a23f8b9cd9579451059acb08f14f52 Mon Sep 17 00:00:00 2001 From: skotlex Date: Fri, 2 Feb 2007 19:59:39 +0000 Subject: - The define MESSAGE_SIZE was wrong! It is only used for input boxes. Therefore now it is only used for Vending, Talkie box and Graffiti - Added new define CHAT_SIZE which holds the max length that a client can send from the chat buffer. This value is NAME_LENGTH + 3 (the ' : ') + 70 (the actual text). - Added define msg_len_check which crops incoming client text if it's longer than CHAT_SIZE. Added cropping to all incoming messages except normal chatting which is already accounted for. - Removed variable talkie_mes, this is now handled by sd->message - Cleaned up parser functions for /b /lb, gm kick, /shift, /recall - Added crash protection to the logging functions when they receive a too long string. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@9778 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/vending.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/map/vending.c') diff --git a/src/map/vending.c b/src/map/vending.c index 9b4b797e0..bc3b1c73f 100644 --- a/src/map/vending.c +++ b/src/map/vending.c @@ -254,7 +254,8 @@ void vending_openvending(struct map_session_data *sd,int len,char *message,int f } sd->vender_id = sd->bl.id; sd->vend_num = i; - memcpy(sd->message,message, MESSAGE_SIZE-1); + memcpy(sd->message,message, MESSAGE_SIZE); + sd->message[MESSAGE_SIZE-1] = '\0'; if (clif_openvending(sd,sd->vender_id,sd->vending) > 0){ pc_stop_walking(sd,1); clif_showvendingboard(&sd->bl,message,0); -- cgit v1.2.3-70-g09d2