]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
pause: avoid updating socket if done was already called
authorDaniel Stenberg <daniel@haxx.se>
Fri, 8 Nov 2019 22:07:55 +0000 (23:07 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Sun, 10 Nov 2019 15:48:47 +0000 (16:48 +0100)
... avoids unnecesary recursive risk when the transfer is already done.

Reported-by: Richard Bowker
Fixes #4563
Closes #4574

lib/easy.c

index 001648d49bb56692a9479f556057afe51e60a0e5..fc5eceb6a2ef523e3e16ebc0d9629da84d8c1b38 100644 (file)
@@ -1027,9 +1027,10 @@ CURLcode curl_easy_pause(struct Curl_easy *data, int action)
       Curl_update_timer(data->multi);
   }
 
-  /* This transfer may have been moved in or out of the bundle, update
-     the corresponding socket callback, if used */
-  Curl_updatesocket(data);
+  if(!data->state.done)
+    /* This transfer may have been moved in or out of the bundle, update the
+       corresponding socket callback, if used */
+    Curl_updatesocket(data);
 
   return result;
 }