summaryrefslogtreecommitdiff
path: root/ytdlsb-tasks.c
diff options
context:
space:
mode:
Diffstat (limited to 'ytdlsb-tasks.c')
-rw-r--r--ytdlsb-tasks.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/ytdlsb-tasks.c b/ytdlsb-tasks.c
index 0e97a94..9b3a0c5 100644
--- a/ytdlsb-tasks.c
+++ b/ytdlsb-tasks.c
@@ -198,13 +198,18 @@ int ytdlsb_task_fdto_from_curl(
long timeout;
CKZ(err, curl_multi_timeout(cm, &timeout));
- if(overwrite_timeout && timeout < 0){
- CKP(err, ytdlsb_task_timeout_unset(task));
- }else if(overwrite_timeout){
- CKP(err, ytdlsb_task_timeout_ms(task, TRY_NUMCAST(err, int, timeout)));
+ if(overwrite_timeout){
+ if(timeout < 0){
+ CKP(err, ytdlsb_task_timeout_unset(task));
+ }else{
+ CKP(err, ytdlsb_task_timeout_ms(task,
+ TRY_NUMCAST(err, int, timeout)));
+ }
}else{
- CKP(err, ytdlsb_task_timeout_ms_min(task,
- TRY_NUMCAST(err, int, timeout)));
+ if(timeout >= 0){
+ CKP(err, ytdlsb_task_timeout_ms_min(task,
+ TRY_NUMCAST(err, int, timeout)));
+ }
}
CKZ(err, curl_multi_waitfds(cm, NULL, 0, &ncfds));