changeset 13398:361aafbd448c

stats: Don't crash at deinit if there are still connected sessions.
author Timo Sirainen <tss@iki.fi>
date Mon, 05 Sep 2011 11:34:43 +0300
parents 7669b0fbada5
children ed8ed96cc828
files src/stats/mail-session.c
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/stats/mail-session.c	Mon Sep 05 11:13:12 2011 +0300
+++ b/src/stats/mail-session.c	Mon Sep 05 11:34:43 2011 +0300
@@ -247,7 +247,12 @@
 
 void mail_sessions_deinit(void)
 {
-	while (mail_sessions_head != NULL)
+	while (mail_sessions_head != NULL) {
+		struct mail_session *session = mail_sessions_head;
+
+		if (!session->disconnected)
+			mail_session_unref(&session);
 		mail_session_free(mail_sessions_head);
+	}
 	hash_table_destroy(&mail_sessions_hash);
 }