summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlavioJS <FlavioJS@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-12-31 19:46:59 +0000
committerFlavioJS <FlavioJS@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-12-31 19:46:59 +0000
commit97b29be37a6e972b25435ba8e0a07747996b99bf (patch)
tree88a2d2f25361946e61e19896f898da7b9d714b9e
parent84be7444dfc7f9f11ce0857b19bbd9401f30116e (diff)
downloadhercules-97b29be37a6e972b25435ba8e0a07747996b99bf.tar.gz
hercules-97b29be37a6e972b25435ba8e0a07747996b99bf.tar.bz2
hercules-97b29be37a6e972b25435ba8e0a07747996b99bf.tar.xz
hercules-97b29be37a6e972b25435ba8e0a07747996b99bf.zip
* Fixed a crash in txt char-servers that the memory manager was hiding. online_char_db being used after being destroyed (since r4026)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11999 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--Changelog-Trunk.txt2
-rw-r--r--src/char/char.c8
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);