From 9acb21fa52f80cc6ad6a03f09f019821dce3d23c Mon Sep 17 00:00:00 2001 From: ai4rei Date: Sat, 29 Jan 2011 10:46:01 +0000 Subject: * Fixed a map-server crash when invalid items are deleted (option 'item_check') from a logging-in character (bugreport:2604). - This removes the pc_checkitem call from pc_authok, as the check is done in clif_parse_LoadEndAck as well, after first status calc has taken place. - Inventory list is now sent before pc_checkitem in clif_parse_LoadEndAck, so that deleted items do not show up as 'unknown item'. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14685 54d463be-8e91-2dee-dedb-b68131a5f0ec --- Changelog-Trunk.txt | 4 ++++ src/map/clif.c | 2 +- src/map/pc.c | 2 -- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index 55b78dfea..51e294de6 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -1,5 +1,9 @@ Date Added +2011/01/29 + * Fixed a map-server crash when invalid items are deleted (option 'item_check') from a logging-in character (bugreport:2604). [Ai4rei] + - This removes the pc_checkitem call from pc_authok, as the check is done in clif_parse_LoadEndAck as well, after first status calc has taken place. + - Inventory list is now sent before pc_checkitem in clif_parse_LoadEndAck, so that deleted items do not show up as 'unknown item'. 2011/01/27 * Fixed @accept not checking, whether or not a duel is already full (bugreport:2740, since r4111). [Ai4rei] * Resolving allow/deny IP rules not working (bugreport:2632). [Ai4rei] diff --git a/src/map/clif.c b/src/map/clif.c index e36418706..9831ef4c2 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -8400,8 +8400,8 @@ void clif_parse_LoadEndAck(int fd,struct map_session_data *sd) clif_refreshlook(&sd->bl,sd->bl.id,LOOK_CLOTHES_COLOR,sd->vd.cloth_color,SELF); // item + clif_inventorylist(sd); // inventory list first, otherwise deleted items in pc_checkitem show up as 'unknown item' pc_checkitem(sd); - clif_inventorylist(sd); // cart if(pc_iscarton(sd)) { diff --git a/src/map/pc.c b/src/map/pc.c index f745c2f0a..48a085791 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -892,9 +892,7 @@ bool pc_authok(struct map_session_data *sd, int login_id2, time_t expiration_tim if (!(battle_config.display_skill_fail&2)) sd->state.showdelay = 1; - // アイテムチェック pc_setinventorydata(sd); - pc_checkitem(sd); status_change_init(&sd->bl); if ((battle_config.atc_gmonly == 0 || pc_isGM(sd)) && (pc_isGM(sd) >= get_atcommand_level(atcommand_hide))) -- cgit v1.2.3-60-g2f50