]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
curl:parallel_transfers: make sure retry readds the transfer
authorDaniel Stenberg <daniel@haxx.se>
Sat, 5 Sep 2020 15:04:03 +0000 (17:04 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sat, 5 Sep 2020 21:59:48 +0000 (23:59 +0200)
Reported-by: htasta on github
Fixes #5905
Closes #5917

src/tool_operate.c

index 39200dcd2edb4e93b15b96f3a0fa3fb24879455d..7b6d91241bd0bf4491c61d5ae8f327ee4ac1d4fd 100644 (file)
@@ -2235,12 +2235,13 @@ static CURLcode parallel_transfers(struct GlobalConfig *global,
           curl_multi_remove_handle(multi, easy);
 
           result = post_per_transfer(global, ended, result, &retry);
-          if(retry)
-            continue;
           progress_finalize(ended); /* before it goes away */
           all_added--; /* one fewer added */
           removed = TRUE;
-          (void)del_per_transfer(ended);
+          if(retry)
+            ended->added = FALSE; /* add it again */
+          else
+            (void)del_per_transfer(ended);
         }
       } while(msg);
       if(removed) {