summaryrefslogtreecommitdiff
path: root/src/map/map.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/map/map.c')
-rw-r--r--src/map/map.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/map/map.c b/src/map/map.c
index 8dd538015..e942ead50 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -1085,7 +1085,13 @@ int map_quit(struct map_session_data *sd) {
chrif_char_offline(sd);
#endif
- numdb_erase(id_db,sd->bl.id);
+ {
+ void *p = numdb_search(charid_db,sd->status.char_id);
+ if(p) {
+ numdb_erase(charid_db,sd->status.char_id);
+ free(p);
+ }
+ }
strdb_erase(nick_db,sd->status.name);
numdb_erase(charid_db,sd->status.char_id);