Fix bug #2991, "POP3 sessions duplicated" on race conditions. Patch by
[claws.git] / src / pop.c
index c2f1d4bdb368a3331de341d0246968e5a7478738..a9a0472b88ea04889a636376dac88c0c2e6374c1 100644 (file)
--- a/src/pop.c
+++ b/src/pop.c
@@ -519,6 +519,8 @@ Session *pop3_session_new(PrefsAccount *account)
 
        cm_return_val_if_fail(account != NULL, NULL);
 
+       account->receive_in_progress = TRUE;
+
        session = g_new0(Pop3Session, 1);
 
        session_init(SESSION(session), account, FALSE);
@@ -567,6 +569,8 @@ static void pop3_session_destroy(Session *session)
        g_free(pop3_session->user);
        g_free(pop3_session->pass);
        g_free(pop3_session->error_msg);
+
+       pop3_session->ac_prefs->receive_in_progress = FALSE;
 }
 
 static void pop3_get_uidl_table(PrefsAccount *ac_prefs, Pop3Session *session)