mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2025-12-19 15:07:22 -06:00
Import new trackers from magnet link in case of duplicate torrent (closes #111)
This commit is contained in:
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
|
||||
|
||||
Reference in New Issue
Block a user