aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/multi.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/multi.c b/lib/multi.c
index ebee674dd..698a99eeb 100644
--- a/lib/multi.c
+++ b/lib/multi.c
@@ -2162,10 +2162,12 @@ static CURLMcode multi_socket(struct Curl_multi *multi,
/* walk through each easy handle and do the socket state change magic
and callbacks */
- data=multi->easyp;
- while(data) {
- singlesocket(multi, data);
- data = data->next;
+ if(result != CURLM_BAD_HANDLE) {
+ data=multi->easyp;
+ while(data) {
+ singlesocket(multi, data);
+ data = data->next;
+ }
}
/* or should we fall-through and do the timer-based stuff? */