From: geertjan Date: Mon, 19 Feb 2018 20:06:34 +0000 (+0100) Subject: Fix setting the ETA timestamps X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=23e469a6b2e253dc54c479a98447d8bdbc799be8;p=transmission Fix setting the ETA timestamps Field etaDLSpeedCalculatedAt was set too early, causing the condition following it to always be false. The same for etaULSpeedCalculatedAt. --- diff --git a/libtransmission/torrent.c b/libtransmission/torrent.c index b0f43f773..23a0e9b22 100644 --- a/libtransmission/torrent.c +++ b/libtransmission/torrent.c @@ -1429,10 +1429,10 @@ tr_stat const* tr_torrentStat(tr_torrent* tor) case TR_STATUS_DOWNLOAD: if (tor->etaDLSpeedCalculatedAt + 800 < now) { - tor->etaDLSpeedCalculatedAt = now; tor->etaDLSpeed_Bps = tor->etaDLSpeedCalculatedAt + 4000 < now ? pieceDownloadSpeed_Bps : /* if no recent previous speed, no need to smooth */ (tor->etaDLSpeed_Bps * 4.0 + pieceDownloadSpeed_Bps) / 5.0; /* smooth across 5 readings */ + tor->etaDLSpeedCalculatedAt = now; } if (s->leftUntilDone > s->desiredAvailable && tor->info.webseedCount < 1) @@ -1460,10 +1460,10 @@ tr_stat const* tr_torrentStat(tr_torrent* tor) { if (tor->etaULSpeedCalculatedAt + 800 < now) { - tor->etaULSpeedCalculatedAt = now; tor->etaULSpeed_Bps = tor->etaULSpeedCalculatedAt + 4000 < now ? pieceUploadSpeed_Bps : /* if no recent previous speed, no need to smooth */ (tor->etaULSpeed_Bps * 4.0 + pieceUploadSpeed_Bps) / 5.0; /* smooth across 5 readings */ + tor->etaULSpeedCalculatedAt = now; } if (tor->etaULSpeed_Bps == 0)