summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2020-09-05 17:04:03 +0200
committerDaniel Stenberg <daniel@haxx.se>2020-09-05 23:59:48 +0200
commite4e725f8355b925eae7ae6ba1ead4fe17b5650f3 (patch)
tree932adb6a71f9b5b214be2ffbe7af0dc23719dab2 /src
parentbbf8cae44dedc495e6e71ceecf804a60e71d0431 (diff)
downloadcurl-e4e725f8355b925eae7ae6ba1ead4fe17b5650f3.tar.gz
curl:parallel_transfers: make sure retry readds the transfer
Reported-by: htasta on github Fixes #5905 Closes #5917
Diffstat (limited to 'src')
-rw-r--r--src/tool_operate.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/tool_operate.c b/src/tool_operate.c
index 39200dcd2..7b6d91241 100644
--- a/src/tool_operate.c
+++ b/src/tool_operate.c
@@ -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) {