commit f09ae1ff789f4225465fdef33da930fac8f00191 parent 68da8a3e5f60f04fca65e2cb3c58384d530653da Author: Colin Leroy <colin@colino.net> Date: Thu, 1 May 2014 20:11:35 +0200 More leak fix for bug #3155 Diffstat:
| M | src/imap.c | | | 9 | ++++++--- |
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/imap.c b/src/imap.c @@ -1045,10 +1045,10 @@ new_conn: rfolder->session = NULL; if (!is_fatal(r)) { imap_threaded_disconnect(session->folder); - SESSION(session)->state = SESSION_DISCONNECTED; - SESSION(session)->sock = NULL; - imap_safe_destroy(session); } + SESSION(session)->state = SESSION_DISCONNECTED; + SESSION(session)->sock = NULL; + imap_safe_destroy(session); rfolder->last_failure = time(NULL); rfolder->connecting = FALSE; return NULL; @@ -1071,6 +1071,9 @@ new_conn: else { rfolder->session = NULL; rfolder->connecting = FALSE; + SESSION(session)->state = SESSION_DISCONNECTED; + SESSION(session)->sock = NULL; + imap_safe_destroy(session); session = imap_session_get(folder); } }