diff --git a/libtransmission/tracker.c b/libtransmission/tracker.c index 5a5048076..f97dee007 100644 --- a/libtransmission/tracker.c +++ b/libtransmission/tracker.c @@ -491,6 +491,11 @@ onScrapeResponse( tr_session * session, if(( tr_bencDictFindInt( flags, "min_request_interval", &itmp ))) t->scrapeIntervalSec = i; + /* as per ticket #1045, safeguard against trackers returning + * a very low min_request_interval... */ + if( t->scrapeIntervalSec < DEFAULT_SCRAPE_INTERVAL_SEC ) + t->scrapeIntervalSec = DEFAULT_SCRAPE_INTERVAL_SEC; + tr_ndbg( t->name, "Scrape successful. Rescraping in %d seconds.", t->scrapeIntervalSec );