aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog2
-rw-r--r--libsylph/pop.c5
2 files changed, 6 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index fe795364..e827ce87 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,8 @@
* libsylph/pop.c
src/inc.c: do not disconnect immediately but send QUIT on normal
POP3 errors.
+ * libsylph/pop.c: set Pop3Session::state to POP3_ERROR if QUIT
+ fail.
2013-01-22
diff --git a/libsylph/pop.c b/libsylph/pop.c
index c5b86b2e..aa41b53c 100644
--- a/libsylph/pop.c
+++ b/libsylph/pop.c
@@ -844,7 +844,10 @@ static gint pop3_session_recv_msg(Session *session, const gchar *msg)
}
break;
case POP3_LOGOUT:
- pop3_session->state = POP3_DONE;
+ if (val == PS_SUCCESS)
+ pop3_session->state = POP3_DONE;
+ else
+ pop3_session->state = POP3_ERROR;
session_disconnect(session);
break;
case POP3_ERROR: