diff options
author | ultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2007-10-18 12:49:49 +0000 |
---|---|---|
committer | ultramage <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2007-10-18 12:49:49 +0000 |
commit | f20c6c19cda1c672ed93836ddd33ce8e08e104c9 (patch) | |
tree | 2191cdf38dc908565a7cc5e63c43cc627bdfd2bb /src/map/charcommand.c | |
parent | c6ea185bd9ca1c3fdf7a18c4bf1e0b1150fffed5 (diff) | |
download | hercules-f20c6c19cda1c672ed93836ddd33ce8e08e104c9.tar.gz hercules-f20c6c19cda1c672ed93836ddd33ce8e08e104c9.tar.bz2 hercules-f20c6c19cda1c672ed93836ddd33ce8e08e104c9.tar.xz hercules-f20c6c19cda1c672ed93836ddd33ce8e08e104c9.zip |
* Removed commented-out code for check_fake_id()
* Merged improved/cleaned up (WiP) code for clif_parse_WisMessage
* Removed the requirement to provide a character name in the message string when calling is_atcommand() (needed for the previous fix)
- currently both ways work, but old will be removed in the upcoming command cleanup so please adjust your custom code if you use this!
* Added clif_process_message(), an unified way to validate all four types of player message packets and retrieve their components
* Applied the new checking function to clif code, this fixes various length mismatches caused by incomplete code in r11386 (bugreport:198)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11507 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/charcommand.c')
-rw-r--r-- | src/map/charcommand.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/map/charcommand.c b/src/map/charcommand.c index dc16f399b..d5f819625 100644 --- a/src/map/charcommand.c +++ b/src/map/charcommand.c @@ -287,11 +287,15 @@ CharCommandType is_charcommand(const int fd, struct map_session_data* sd, const if (!message || !*message) return CharCommand_None; - str += strlen(sd->status.name); - while (*str && (ISSPACE(*str) || (s_flag == 0 && *str == ':'))) { - if (*str == ':') - s_flag = 1; - str++; + // temporary compatibility layer for previous implementation + if( *message != charcommand_symbol ) + { + str += strlen(sd->status.name); + while (*str && (ISSPACE(*str) || (s_flag == 0 && *str == ':'))) { + if (*str == ':') + s_flag = 1; + str++; + } } if (!*str) |