mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-07-15 09:43:07 -07:00
Import new trackers from magnet link in case of duplicate torrent (closes #111)
This commit is contained in:
parent
819dcacae0
commit
806ab07865
4 changed files with 52 additions and 5 deletions
20
src/misc.cpp
20
src/misc.cpp
|
@ -309,7 +309,7 @@ QString misc::bcLinkToMagnet(QString bc_link) {
|
|||
return magnet;
|
||||
}
|
||||
|
||||
QString misc::magnetUriToName(QString magnet_uri) {
|
||||
QString misc::magnetUriToName(const QString& magnet_uri) {
|
||||
QString name = "";
|
||||
QRegExp regHex("dn=([^&]+)");
|
||||
const int pos = regHex.indexIn(magnet_uri);
|
||||
|
@ -321,7 +321,23 @@ QString misc::magnetUriToName(QString magnet_uri) {
|
|||
return name;
|
||||
}
|
||||
|
||||
QString misc::magnetUriToHash(QString magnet_uri) {
|
||||
QList<QUrl> misc::magnetUriToTrackers(const QString& magnet_uri)
|
||||
{
|
||||
QList<QUrl> trackers;
|
||||
QRegExp rx("tr=([^&]+)");
|
||||
int pos = 0;
|
||||
|
||||
while ((pos = rx.indexIn(magnet_uri, pos)) != -1) {
|
||||
const QUrl tracker = QUrl::fromEncoded(rx.cap(1).toUtf8());
|
||||
qDebug() << Q_FUNC_INFO << "Found tracker: " << tracker.toString();
|
||||
trackers << tracker;
|
||||
pos += rx.matchedLength();
|
||||
}
|
||||
|
||||
return trackers;
|
||||
}
|
||||
|
||||
QString misc::magnetUriToHash(const QString& magnet_uri) {
|
||||
QString hash = "";
|
||||
QRegExp regHex("urn:btih:([0-9A-Za-z]+)");
|
||||
// Hex
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue