diff --git a/lib/progress.c b/lib/progress.c index 01ed8ac37c1c9422dd0d9342099ea5fe4abc1a45..a36def75cf6f2b96eb315b5923fb6dca25fc3ea8 100644 --- a/lib/progress.c +++ b/lib/progress.c @@ -362,7 +362,8 @@ int Curl_pgrsUpdate(struct connectdata *conn) /* Figure out the estimated time of arrival for the upload */ if((data->progress.flags & PGRS_UL_SIZE_KNOWN) && - (data->progress.ulspeed > 100)) { + (data->progress.ulspeed>0) && + (data->progress.size_ul > 100) ) { ulestimate = (long)(data->progress.size_ul / data->progress.ulspeed); ulpercen = (long)(100*(data->progress.uploaded/100) / (data->progress.size_ul/100) ); @@ -370,7 +371,8 @@ int Curl_pgrsUpdate(struct connectdata *conn) /* ... and the download */ if((data->progress.flags & PGRS_DL_SIZE_KNOWN) && - (data->progress.dlspeed > 100)) { + (data->progress.dlspeed>0) && + (data->progress.size_dl>100)) { dlestimate = (long)(data->progress.size_dl / data->progress.dlspeed); dlpercen = (long)(100*(data->progress.downloaded/100) / (data->progress.size_dl/100));