diff options
-rw-r--r-- | Changelog-Trunk.txt | 2 | ||||
-rw-r--r-- | src/char/char.c | 8 |
2 files changed, 6 insertions, 4 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index edb933262..ddfca65fc 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,8 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. 2007/12/31 + * Fixed a crash in txt char-servers that the memory manager was hiding. + online_char_db being used after being destroyed (since r4026) * Added code to reject double logins in clif_parse_WantToConnection and added debug messages to detect possible double logins that escaped. * Isolated accounts that are waiting for the quit ack. The rest of the diff --git a/src/char/char.c b/src/char/char.c index d91ebd1aa..717b1117e 100644 --- a/src/char/char.c +++ b/src/char/char.c @@ -4177,15 +4177,15 @@ int chardb_final(int key, void* data, va_list va) void do_final(void) { ShowStatus("Terminating server.\n"); - // write online players files with no player - online_char_db->clear(online_char_db, NULL); //clean the db... - create_online_files(); - online_char_db->destroy(online_char_db, NULL); //dispose the db... mmo_char_sync(); inter_save(); set_all_offline(-1); flush_fifos(); + // write online players files with no player + online_char_db->clear(online_char_db, NULL); //clean the db... + create_online_files(); + online_char_db->destroy(online_char_db, NULL); //dispose the db... if(gm_account) aFree(gm_account); if(char_dat) aFree(char_dat); |