summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog.txt3
-rw-r--r--src/char/char.c5
2 files changed, 6 insertions, 2 deletions
diff --git a/Changelog.txt b/Changelog.txt
index 40146bb80..bfca05f9a 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -1,4 +1,7 @@
Date Added
+11/24
+ * Fixed char-txt crashing when closing, Codemaster free()'s. [MC Cameri]
+
11/23
* Fixed script loading small/large monsters. [Valaris]
* @charoption is now #option [MC Cameri]
diff --git a/src/char/char.c b/src/char/char.c
index 96a851295..5a3995be8 100644
--- a/src/char/char.c
+++ b/src/char/char.c
@@ -3315,12 +3315,13 @@ int flush_timer(int tid, unsigned int tick, int id, int data){
void do_final(void) {
int i;
-
+ printf("Terminating server.\n");
// write online players files with no player
for(i = 0; i < online_players_max; i++) {
online_chars[i].char_id = -1;
online_chars[i].server = -1;
}
+
create_online_files();
if(online_chars) free(online_chars);
@@ -3334,7 +3335,7 @@ void do_final(void) {
delete_session(char_fd);
for(i = 0; i < fd_max; i++)
- if(session[i]->session_data) free(session[i]->session_data);
+ if(session[i] != NULL) free(session[i]);
char_log("----End of char-server (normal end with closing of all files)." RETCODE);
}