Increased the allowed packet size for chat messages.

Changed the capacity of the message column in chatlog (see sql update).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@12725 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
ultramage 2008-05-26 11:25:12 +00:00
parent 99926544f3
commit 6b904e34cb
4 changed files with 11 additions and 6 deletions

View File

@ -3,6 +3,9 @@ Date Added
AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2008/05/26
* Increased the allowed packet size for chat messages [ultramage]
- changed the capacity of the message column in chatlog (see sql update)
2008/05/25
* Increased storage space to 600 [Playtester]
2008/05/24

View File

@ -0,0 +1 @@
ALTER TABLE `chatlog` CHANGE `message` `message` VARCHAR( 255 ) NOT NULL

View File

@ -7570,12 +7570,13 @@ static bool clif_process_message(struct map_session_data* sd, int format, char**
ShowWarning("clif_process_message: Player '%s' sent an unterminated message string!\n", sd->status.name);
return false;
}
if( messagelen > CHAT_SIZE_MAX )
if( messagelen > CHAT_SIZE_MAX-1 )
{ // messages mustn't be too long
// Normally you can only enter CHATBOX_SIZE-1 chars into the chat box, but Frost Joke / Dazzler's text can be longer.
// Neither the official client nor server place any restriction on the length of the text in the packet,
// but we'll only allow reasonably long strings here. This also makes sure all strings fit into the `chatlog` table.
ShowWarning("clif_process_message: Player '%s' sent a message too long ('%.*s')!\n", sd->status.name, CHAT_SIZE_MAX, message);
// Normally you can only enter CHATBOX_SIZE-1 letters into the chat box, but Frost Joke / Dazzler's text can be longer.
// Also, the physical size of strings that use multibyte encoding can go multiple times over the chatbox capacity.
// Neither the official client nor server place any restriction on the length of the data in the packet,
// but we'll only allow reasonably long strings here. This also makes sure that they fit into the `chatlog` table.
ShowWarning("clif_process_message: Player '%s' sent a message too long ('%.*s')!\n", sd->status.name, CHAT_SIZE_MAX-1, message);
return false;
}

View File

@ -151,7 +151,7 @@ enum {
#define CHATROOM_TITLE_SIZE (36 + 1)
#define CHATROOM_PASS_SIZE (8 + 1)
//Max allowed chat text length
#define CHAT_SIZE_MAX 150
#define CHAT_SIZE_MAX 256
#define DEFAULT_AUTOSAVE_INTERVAL 5*60*1000