diff --git a/qt/VariantHelpers.cc b/qt/VariantHelpers.cc index b3e1c72e6..19cfea70f 100644 --- a/qt/VariantHelpers.cc +++ b/qt/VariantHelpers.cc @@ -15,6 +15,7 @@ #include #include +#include #include "Application.h" // qApp #include "Speed.h" @@ -186,8 +187,12 @@ bool change(TrackerStat& setme, tr_variant const* value) { if (setme.sitename.isEmpty()) { - QStringList const separated_host = QUrl{ setme.announce }.host().split(QStringLiteral(".")); - setme.sitename = separated_host.at(separated_host.size() - 2); + auto const announce_str = setme.announce.toStdString(); + if (auto const parsed = tr_urlParse(announce_str)) + { + auto const sitename = parsed->sitename; + setme.sitename = QString::fromUtf8(std::data(sitename), std::size(sitename)); + } } setme.announce = trApp->intern(setme.announce);