multi_runsingle: change state on callback abort
authorDaniel Stenberg <daniel@haxx.se>
Fri, 30 Sep 2011 20:59:50 +0000 (22:59 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 30 Sep 2011 20:59:50 +0000 (22:59 +0200)
Reported by: Marcin Adamski
Bug: http://curl.haxx.se/mail/lib-2011-09/0329.html

lib/multi.c

index 9cc6944..d2c9459 100644 (file)
@@ -1656,8 +1656,10 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
         multistate(easy, CURLM_STATE_COMPLETED);
       }
       /* if there's still a connection to use, call the progress function */
-      else if(easy->easy_conn && Curl_pgrsUpdate(easy->easy_conn))
+      else if(easy->easy_conn && Curl_pgrsUpdate(easy->easy_conn)) {
         easy->result = CURLE_ABORTED_BY_CALLBACK;
+        multistate(easy, CURLM_STATE_COMPLETED);
+      }
     }
   } WHILE_FALSE; /* just to break out from! */