From 6c579950f6a91170855a003345105f22bfde6abe Mon Sep 17 00:00:00 2001 From: sledgehammer999 Date: Sat, 9 May 2015 20:04:03 +0300 Subject: [PATCH] Correctly detect trackers with invalid TLDs or IPv4/IPv6 addresses. --- src/gui/transferlistfilterswidget.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gui/transferlistfilterswidget.cpp b/src/gui/transferlistfilterswidget.cpp index eabb2abd8..cc2c75acc 100644 --- a/src/gui/transferlistfilterswidget.cpp +++ b/src/gui/transferlistfilterswidget.cpp @@ -718,6 +718,10 @@ QString TrackerFiltersList::getHost(const QString &trakcer) const QUrl url(trakcer); QString longHost = url.host(); QString tld = url.topLevelDomain(); + // We get empty tld when it is invalid or an IPv4/IPv6 address, + // so just return the full host + if (tld.isEmpty()) + return longHost; // We want the domain + tld. Subdomains should be disregarded int index = longHost.lastIndexOf('.', -(tld.size() + 1)); if (index == -1)