aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2012-12-15 15:31:38 +0100
committerDaniel Stenberg <daniel@haxx.se>2012-12-24 23:43:42 +0100
commit2897ce7dc2e1b7e8c94e8fc79f6199c33efe7547 (patch)
treea8cd01be04a0b93ce9c262b3d5dd90070e7ad2dc
parent5ed03ebe52160ab9c1cf8f569258a210084b782f (diff)
pop3_doing: don't call pop3_dophase_done() if already failed
... it also clobbered the 'result' return value so that it wouldn't return the error back to the parent function properly, which broke test 809 when run with 'multi-always'.
-rw-r--r--lib/pop3.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/pop3.c b/lib/pop3.c
index 391f4e7b1..7fb4f5c35 100644
--- a/lib/pop3.c
+++ b/lib/pop3.c
@@ -1554,7 +1554,7 @@ static CURLcode pop3_doing(struct connectdata *conn, bool *dophase_done)
CURLcode result;
result = pop3_multi_statemach(conn, dophase_done);
- if(*dophase_done) {
+ if(!result && *dophase_done) {
result = pop3_dophase_done(conn, FALSE /* not connected */);
DEBUGF(infof(conn->data, "DO phase is complete\n"));