From 19dadc72ab415ac14aead231c63e2b6fe28be2cf Mon Sep 17 00:00:00 2001 From: skotlex Date: Sun, 26 Mar 2006 05:47:22 +0000 Subject: - Fixed jstrescapecpy crashing when you pass a null string to parse. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5753 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/common/strlib.c | 5 +++++ src/map/log.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/common/strlib.c b/src/common/strlib.c index 12c34556f..361c693c1 100644 --- a/src/common/strlib.c +++ b/src/common/strlib.c @@ -48,6 +48,11 @@ char* jstrescapecpy (char* pt,char* spt) { //a escape character is found, the target's final length increases! [Skotlex] int i =0, j=0; + if (!spt) { //Return an empty string [Skotlex] + pt[0] = '\0'; + return &pt[0]; + } + while (spt[i] != '\0') { switch (spt[i]) { case '\'': diff --git a/src/map/log.c b/src/map/log.c index af621e425..2722153e7 100644 --- a/src/map/log.c +++ b/src/map/log.c @@ -718,7 +718,7 @@ int log_chat(char *type, int type_id, int src_charid, int src_accid, char *map, #ifndef TXT_ONLY if(log_config.sql_logs > 0){ sprintf(tmp_sql, "INSERT DELAYED INTO `%s` (`time`, `type`, `type_id`, `src_charid`, `src_accountid`, `src_map`, `src_map_x`, `src_map_y`, `dst_charname`, `message`) VALUES (NOW(), '%s', '%d', '%d', '%d', '%s', '%d', '%d', '%s', '%s')", - log_config.log_chat_db, type, type_id, src_charid, src_accid, map, x, y, jstrescapecpy(t_charname, (char *)dst_charname), jstrescapecpy(t_msg, (char *)message)); + log_config.log_chat_db, type, type_id, src_charid, src_accid, map, x, y, jstrescapecpy(t_charname, dst_charname), jstrescapecpy(t_msg, message)); if(mysql_query(&logmysql_handle, tmp_sql)){ ShowSQL("DB error - %s\n",mysql_error(&logmysql_handle)); -- cgit v1.2.3-70-g09d2