1
mirror of https://github.com/qbittorrent/qBittorrent synced 2025-10-12 03:12:18 +02:00

Compare commits

...

42 Commits

Author SHA1 Message Date
Christophe Dumez
b3d2f9b701 Update Github for search plugin updates 2012-02-18 21:17:10 +02:00
Christophe Dumez
055a99239b Bump version to v2.9.4 2012-02-18 20:45:27 +02:00
Christophe Dumez
e779c9a7db Update Changelog 2012-02-18 20:42:17 +02:00
Christophe Dumez
b0f7f5ae58 Prevent log window buffer from filling up (Closes #929673) 2012-02-18 20:41:00 +02:00
Christophe Dumez
512ab58832 Update Changelog 2012-02-18 20:24:37 +02:00
Christophe Dumez
9ad088682c Fix torrent import dialog layout (Closes #930932) 2012-02-18 20:22:39 +02:00
Christophe Dumez
d2fad8249c Updated Changelog 2012-02-18 20:09:23 +02:00
Christophe Dumez
20fb7c3adf Add Cmd+Delete shortcut to delete a torrent (Mac OS X) 2012-02-18 20:07:10 +02:00
Christophe Dumez
c4fdfec420 Update Changelog 2012-02-15 21:15:42 +02:00
Christophe Dumez
a3e03e739c Fix potential bug when moving single file torrents to tmp folder (closes #932861) 2012-02-15 21:15:18 +02:00
Christophe Dumez
9846dc0fff Update Changelog 2012-02-07 19:51:04 +02:00
Christophe Dumez
1b29b148d8 Cmd+M minimizes main window on Mac OS X (Closes #928216)
(cherry picked from commit dd7e515f9c)
2012-02-07 19:50:25 +02:00
Christophe Dumez
6dab35cb8e Fixes to Belarusian translation 2012-02-02 20:45:51 +02:00
Christophe Dumez
6b2d922005 Update Changelog 2012-01-31 19:29:57 +02:00
Christophe Dumez
1d92ae6382 Add Belarusian translation by Mihas Varantsou 2012-01-31 19:28:40 +02:00
Christophe Dumez
62f4d6386a Update Changelog 2012-01-30 19:44:34 +02:00
Christophe Dumez
e74ef4c6fd Bug #919905: qBittorrent does not handle redirection to relative URLs correctly
Thanks to luran for providing a first version of this patch.
2012-01-30 19:43:16 +02:00
Christophe Dumez
282ee0e879 Fix tarball generated by make dist 2011-12-29 23:42:05 +02:00
Christophe Dumez
697d2ccb71 Update changelog 2011-12-29 14:56:36 +02:00
Christophe Dumez
71d163d743 Program updater: More reliable version detection / comparison
(cherry picked from commit c0eb048fe2)
2011-12-29 01:27:36 +02:00
Christophe Dumez
83685942de Web UI: Improve usability of small devices
(cherry picked from commit 78bb4104b0)
2011-12-29 00:26:04 +02:00
Christophe Dumez
6f34c81014 Make torrent sorting case insensitive (Closes #857154)
(cherry picked from commit 6c10936f6d)
2011-12-28 23:33:39 +02:00
Christophe Dumez
5e826dffc8 Bump version to v2.9.3 2011-12-28 14:41:02 +02:00
Christophe Dumez
b4dc66020c Do not report any progress for disabled files (Closes #56731485)
(cherry picked from commit 4ca665eb0c)
2011-12-28 14:40:24 +02:00
Christophe Dumez
cb4741ed89 Mac OS X: Tweak project file to fix compilation errors
(cherry picked from commit 39e1ebaa9b)
2011-12-28 14:39:28 +02:00
Christophe Dumez
4c3976e5df Fix torrent addition dialog layout problem (Closes #84650522)
(cherry picked from commit 0a0033b242)
2011-12-28 11:53:16 +02:00
Christophe Dumez
fd7fb115ff Fix banning of IPv6 peers
(cherry picked from commit 9eea35f530)
2011-12-28 11:34:07 +02:00
Christophe Dumez
197d5b3a05 I18N: Add Georgian translation
(cherry picked from commit 26b8decb24)
2011-12-27 13:32:46 +02:00
Christophe Dumez
624d6aa6a1 Update Changelog 2011-12-13 18:53:13 +02:00
btdigg research
28d7dc137b btdigg: Python3 support and add torrent in magnet link
(cherry picked from commit a275e26ba7)
2011-12-13 18:48:41 +02:00
Christophe Dumez
351d84e2f7 misc.cpp: Fix compilation on Mac OS X
(cherry picked from commit 96c918ff8d)
2011-11-16 21:57:06 +02:00
Christophe Dumez
774b8f4fd6 Bump to v2.9.2 2011-10-29 10:38:03 +03:00
Christophe Dumez
2fc6470696 Torrent addition dialog: Fix minimum dialog size
(cherry picked from commit 2283bd2358)
2011-10-29 10:36:03 +03:00
Christophe Dumez
1038b00553 Get rid of libboost-filesystem dependency if libtorrent >= v0.16.x is used
(cherry picked from commit f6b7b8bd6e)
2011-10-25 20:57:39 +03:00
Christophe Dumez
c3b37b4f1f Bump to v2.9.1 2011-10-23 10:38:37 +03:00
Christophe Dumez
41faf341cc Web UI: Add support for speed limits scheduling
(cherry picked from commit 1b8a2bf7c1)
2011-10-19 19:56:39 +03:00
Christophe Dumez
44e92a7f3d Update DHT bootstrap nodes
(cherry picked from commit 33325cdfee)
2011-10-16 11:31:12 +03:00
Christophe Dumez
599f956269 Torrent addition dialog: Layout fixes
(cherry picked from commit d81f633d6b)
2011-10-16 10:08:09 +03:00
Christophe Dumez
79a9606e86 Fix ratio calculation for purely seeded torrents
(cherry picked from commit 422b483d78)
2011-10-16 09:43:07 +03:00
Christophe Dumez
5b576baf67 Update Russian translation 2011-10-10 20:23:42 +03:00
Christophe Dumez
aa3ce90478 Completly disable Windows cache
(cherry picked from commit 74081bc6f8)
2011-10-08 13:37:04 +03:00
Christophe Dumez
2c433e35b0 Revert "Use %USERPROFILE%\Downloads as download folder on Windows"
This reverts commit 357e309dad.
2011-10-08 13:35:25 +03:00
64 changed files with 15569 additions and 4621 deletions

View File

@@ -74,6 +74,7 @@ Translations authors:
copyright: copyright:
- Arabic: SDERAWI (abz8868@msn.com) and sn51234 (nesseyan@gmail.com) - Arabic: SDERAWI (abz8868@msn.com) and sn51234 (nesseyan@gmail.com)
- Armenian: Hrant Ohanyan (hrantohanyan@mail.am) - Armenian: Hrant Ohanyan (hrantohanyan@mail.am)
- Belarusian: Mihas Varantsou (meequz@gmail.com)
- Brazilian: Nick Marinho (nickmarinho@gmail.com) - Brazilian: Nick Marinho (nickmarinho@gmail.com)
- Bulgarian: Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net) - Bulgarian: Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net)
- Catalan: Francisco Luque Contreras (frannoe@ya.com) - Catalan: Francisco Luque Contreras (frannoe@ya.com)
@@ -87,6 +88,7 @@ Translations authors:
- Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net) - Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net)
- French: Christophe Dumez (chris@qbittorrent.org) - French: Christophe Dumez (chris@qbittorrent.org)
- Galician: Marcos Lans (marcoslansgarza@gmail.com) - Galician: Marcos Lans (marcoslansgarza@gmail.com)
- Georgian: Beqa Arabuli (arabulibeqa@yahoo.com)
- German: Niels Hoffmann (zentralmaschine@users.sourceforge.net) - German: Niels Hoffmann (zentralmaschine@users.sourceforge.net)
- Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net) and Stephanos Antaris (santaris@csd.auth.gr) - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net) and Stephanos Antaris (santaris@csd.auth.gr)
- Hungarian: Majoros Péter (majoros.j.p@t-online.hu) - Hungarian: Majoros Péter (majoros.j.p@t-online.hu)

View File

@@ -1,3 +1,33 @@
* Sat Feb 18 2012 - Christophe Dumez <chris@qbittorrent.org> - v2.9.4
- BUGFIX: qBittorrent does not handle redirection to relative URLs correctly (Closes #919905)
- BUGFIX: Cmd+M minimizes main window on Mac OS X (Closes #928216)
- BUGFIX: Cmd+Del removes torrents on Mac OS X (Closes #928852)
- BUGFIX: Fix potential bug when moving single file torrents to tmp folder (closes #932861)
- BUGFIX: Fix torrent import dialog layout (Closes #930932)
- BUGFIX: Prevent log window buffer from filling up (Closes #929673)
- I18N: Add Belarusian translation
* Thu Dec 29 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.9.3
- BUGFIX: Fix btdigg plugin (Python3 support + torrent name in magnet links)
- BUGFIX: Fix banning of IPv6 peers (Closes #885021)
- BUGFIX: Fix torrent addition dialog layout problem (Closes #84650522)
- BUGFIX: Do not report any progress for disabled files (Closes #56731485)
- BUGFIX: Make torrent sorting case insensitive (Closes #857154)
- BUGFIX: Improve Web UI usability of small devices
- BUGFIX: Program updater: More reliable version detection / comparison
- I18N: Add Georgian translation
* Sat Oct 29 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.9.2
- BUGFIX: Fix mimimum dimensions for torrent addition dialog
- BUGFIX: Remove dependency on boost-datetime
- BUGFIX: Remove dependency on boost-filesystem (libtorrent v0.16.x)
* Sun Oct 23 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.9.1
- BUGFIX: Add support for speed limits scheduling (Web UI)
- BUGFIX: Fix ratio calculation for purely seeded torrents
- I18N: Update Russian translation
- COSMETIC: Torrent addition dialog layout fixes
* Sat Oct 08 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.9.0 * Sat Oct 08 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.9.0
- FEATURE: Add file association settings to program preferences (Windows) - FEATURE: Add file association settings to program preferences (Windows)
- FEATURE: Add setting to ignore slow torrents in queueing system - FEATURE: Add setting to ignore slow torrents in queueing system

10
INSTALL
View File

@@ -14,15 +14,17 @@ qBittorrent - A BitTorrent client in C++ / Qt4
- pkg-config executable - pkg-config executable
- libtorrent-rasterbar by Arvid Norberg (>= 0.14.4 REQUIRED, compatible with v0.15.x) - libtorrent-rasterbar by Arvid Norberg (>= 0.14.4 REQUIRED, compatible with v0.15.x/v0.16.x)
-> http://www.libtorrent.net -> http://www.libtorrent.net
Be careful: another library (the one used by rTorrent) uses a similar name. Be careful: another library (the one used by rTorrent) uses a similar name.
- libboost 1.34.x (libboost-filesystem, libboost-date-time) + libasio - libboost 1.34.x (libboost-filesystem°) + libasio
or or
- libboost >= 1.35.x (libboost-system, libboost-filesystem, libboost-date-time) - libboost >= 1.35.x (libboost-system, libboost-filesystem°)
°libboost-filesystem is not needed if libtorrent-rasterbar >= v0.16.x is used
- python >= 2.3 && < 3.0 (needed by search engine) - python >= 2.3 (needed by search engine)
* Run time only dependency * Run time only dependency
- geoip-database (optional) - geoip-database (optional)

111
configure vendored
View File

@@ -442,12 +442,15 @@ arg: with-libboost-lib=[path], Path to libboost library files
-----END QCMOD----- -----END QCMOD-----
*/ */
#include <boost/version.hpp> #include <boost/version.hpp>
#include <libtorrent/version.hpp>
class qc_libboost : public ConfObj class qc_libboost : public ConfObj
{ {
public: public:
qc_libboost(Conf *c) : ConfObj(c) {} qc_libboost(Conf *c) : ConfObj(c) {}
QString name() const { return "libboost"; } QString name() const { return "libboost"; }
QString shortname() const { return "libboost"; } QString shortname() const { return "libboost"; }
QString findBoostLib(QString path, QString lib) const { QString findBoostLib(QString path, QString lib) const {
QString name; QString name;
QDir libDir(path); QDir libDir(path);
@@ -471,77 +474,61 @@ public:
} }
return name; return name;
} }
bool exec(){
QString s; bool exec(){
s = conf->getenv("QC_WITH_LIBBOOST_INC"); QStringList sl;
if(!s.isEmpty()) { QString s = conf->getenv("QC_WITH_LIBBOOST_INC");
if(!conf->checkHeader(s, "boost/format.hpp")) { if (!s.isEmpty())
return false; sl << s;
} sl << "/usr/include";
if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) { sl << "/usr/local/include";
return false; bool found = false;
} foreach (s, sl) {
if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) { if (conf->checkHeader(s, "boost/format.hpp")
return false; #if LIBTORRENT_VERSION_MAJOR == 0 && LIBTORRENT_VERSION_MINOR < 16
} && conf->checkHeader(s, "boost/filesystem/path.hpp")
}else{ #endif
QStringList sl; ) {
sl << "/usr/include"; found = true;
sl << "/usr/local/include"; break;
bool found = false; }
foreach(s, sl){ }
if(conf->checkHeader(s, "boost/format.hpp")){ if (!found)
found = true; return false;
break;
} conf->addIncludePath(s);
}
if(!found) { // Find library
return false; s = conf->getenv("QC_WITH_LIBBOOST_LIB");
}
if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) {
return false;
}
if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) {
return false;
}
}
conf->addIncludePath(s);
// Find library
s = conf->getenv("QC_WITH_LIBBOOST_LIB");
QStringList required_libs; QStringList required_libs;
#if BOOST_VERSION >= 103500 #if BOOST_VERSION >= 103500
required_libs << "system"; required_libs << "system";
#endif #endif
#if LIBTORRENT_VERSION_MAJOR == 0 && LIBTORRENT_VERSION_MINOR < 16
required_libs << "filesystem" ; required_libs << "filesystem" ;
#endif
QStringList libDirs; QStringList libDirs;
if (!s.isEmpty())
libDirs << s;
libDirs << "/usr/lib/" << "/usr/lib64/" << "/usr/local/lib/" << "/usr/local/lib64/"; libDirs << "/usr/lib/" << "/usr/lib64/" << "/usr/local/lib/" << "/usr/local/lib64/";
foreach(const QString& lib, required_libs) { foreach(const QString& lib, required_libs) {
if(!s.isEmpty()) { bool found = false;
QString detected_name = findBoostLib(s, lib); foreach(const QString& libDir, libDirs) {
if(detected_name.isEmpty()) { QString detected_name = findBoostLib(libDir, lib);
printf("Could not find boost %s library!\n", qPrintable(lib)); if(!detected_name.isEmpty()) {
return false;
} else {
conf->addLib("-l"+detected_name); conf->addLib("-l"+detected_name);
} found = true;
} else { break;
bool found = false;
foreach(const QString& libDir, libDirs) {
QString detected_name = findBoostLib(libDir, lib);
if(!detected_name.isEmpty()) {
conf->addLib("-l"+detected_name);
found = true;
break;
}
}
if(!found) {
printf("Could not find boost %s library!\n", qPrintable(lib));
return false;
} }
} }
if(!found) {
printf("Could not find boost %s library!\n", qPrintable(lib));
return false;
}
} }
return true; return true;
} }
}; };
#line 1 "geoip-database.qcm" #line 1 "geoip-database.qcm"
/* /*

View File

@@ -2,8 +2,22 @@ PREFIX = /usr/local
BINDIR = /usr/local/bin BINDIR = /usr/local/bin
DATADIR = /usr/local/share DATADIR = /usr/local/share
INCLUDEPATH += /usr/local/include/libtorrent /usr/include/openssl /usr/include /opt/local/include/boost /opt/local/include # Use pkg-config to get all necessary libtorrent DEFINES
LIBS += -ltorrent-rasterbar -lcrypto -L/opt/local/lib -lboost_system-mt -lboost_filesystem-mt -lboost_thread-mt -framework Cocoa -framework Carbon -framework IOKit CONFIG += link_pkgconfig
PKGCONFIG += libtorrent-rasterbar
# Special include/libs paths (macports)
INCLUDEPATH += /usr/include/openssl /usr/include /opt/local/include/boost /opt/local/include
LIBS += -L/opt/local/lib
# OpenSSL lib
LIBS += -lssl -lcrypto
# Boost system lib
LIBS += -lboost_system-mt
# Boost filesystem lib (Not needed for libtorrent >= 0.16.0)
LIBS += -lboost_filesystem-mt
# Carbon
LIBS += -framework Carbon -framework IOKit
document_icon.path = Contents/Resources document_icon.path = Contents/Resources
document_icon.files = Icons/qBitTorrentDocument.icns document_icon.files = Icons/qBitTorrentDocument.icns

View File

@@ -9,7 +9,8 @@ dist.commands += rm -fR ../$${PROJECT_NAME}-$${PROJECT_VERSION}/ &&
dist.commands += git clone . ../$${PROJECT_NAME}-$${PROJECT_VERSION} && dist.commands += git clone . ../$${PROJECT_NAME}-$${PROJECT_VERSION} &&
dist.commands += rm -fR ../$${PROJECT_NAME}-$${PROJECT_VERSION}/.git && dist.commands += rm -fR ../$${PROJECT_NAME}-$${PROJECT_VERSION}/.git &&
dist.commands += rm -f ../$${PROJECT_NAME}-$${PROJECT_VERSION}/.gitignore && dist.commands += rm -f ../$${PROJECT_NAME}-$${PROJECT_VERSION}/.gitignore &&
dist.commands += tar zcpvf ../$${PROJECT_NAME}-$${PROJECT_VERSION}.tar.gz ../$${PROJECT_NAME}-$${PROJECT_VERSION} && dist.commands += cd .. &&
dist.commands += rm -fR ../$${PROJECT_NAME}-$${PROJECT_VERSION} dist.commands += tar czf $${PROJECT_NAME}-$${PROJECT_VERSION}.tar.gz $${PROJECT_NAME}-$${PROJECT_VERSION} &&
dist.commands += rm -fR $${PROJECT_NAME}-$${PROJECT_VERSION}
QMAKE_EXTRA_TARGETS += dist QMAKE_EXTRA_TARGETS += dist

View File

@@ -6,12 +6,15 @@ arg: with-libboost-lib=[path], Path to libboost library files
-----END QCMOD----- -----END QCMOD-----
*/ */
#include <boost/version.hpp> #include <boost/version.hpp>
#include <libtorrent/version.hpp>
class qc_libboost : public ConfObj class qc_libboost : public ConfObj
{ {
public: public:
qc_libboost(Conf *c) : ConfObj(c) {} qc_libboost(Conf *c) : ConfObj(c) {}
QString name() const { return "libboost"; } QString name() const { return "libboost"; }
QString shortname() const { return "libboost"; } QString shortname() const { return "libboost"; }
QString findBoostLib(QString path, QString lib) const { QString findBoostLib(QString path, QString lib) const {
QString name; QString name;
QDir libDir(path); QDir libDir(path);
@@ -35,75 +38,59 @@ public:
} }
return name; return name;
} }
bool exec(){
QString s; bool exec(){
s = conf->getenv("QC_WITH_LIBBOOST_INC"); QStringList sl;
if(!s.isEmpty()) { QString s = conf->getenv("QC_WITH_LIBBOOST_INC");
if(!conf->checkHeader(s, "boost/format.hpp")) { if (!s.isEmpty())
return false; sl << s;
} sl << "/usr/include";
if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) { sl << "/usr/local/include";
return false; bool found = false;
} foreach (s, sl) {
if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) { if (conf->checkHeader(s, "boost/format.hpp")
return false; #if LIBTORRENT_VERSION_MAJOR == 0 && LIBTORRENT_VERSION_MINOR < 16
} && conf->checkHeader(s, "boost/filesystem/path.hpp")
}else{ #endif
QStringList sl; ) {
sl << "/usr/include"; found = true;
sl << "/usr/local/include"; break;
bool found = false; }
foreach(s, sl){ }
if(conf->checkHeader(s, "boost/format.hpp")){ if (!found)
found = true; return false;
break;
} conf->addIncludePath(s);
}
if(!found) { // Find library
return false; s = conf->getenv("QC_WITH_LIBBOOST_LIB");
}
if(!conf->checkHeader(s, "boost/date_time/posix_time/posix_time.hpp")) {
return false;
}
if(!conf->checkHeader(s, "boost/filesystem/path.hpp")) {
return false;
}
}
conf->addIncludePath(s);
// Find library
s = conf->getenv("QC_WITH_LIBBOOST_LIB");
QStringList required_libs; QStringList required_libs;
#if BOOST_VERSION >= 103500 #if BOOST_VERSION >= 103500
required_libs << "system"; required_libs << "system";
#endif #endif
#if LIBTORRENT_VERSION_MAJOR == 0 && LIBTORRENT_VERSION_MINOR < 16
required_libs << "filesystem" ; required_libs << "filesystem" ;
#endif
QStringList libDirs; QStringList libDirs;
if (!s.isEmpty())
libDirs << s;
libDirs << "/usr/lib/" << "/usr/lib64/" << "/usr/local/lib/" << "/usr/local/lib64/"; libDirs << "/usr/lib/" << "/usr/lib64/" << "/usr/local/lib/" << "/usr/local/lib64/";
foreach(const QString& lib, required_libs) { foreach(const QString& lib, required_libs) {
if(!s.isEmpty()) { bool found = false;
QString detected_name = findBoostLib(s, lib); foreach(const QString& libDir, libDirs) {
if(detected_name.isEmpty()) { QString detected_name = findBoostLib(libDir, lib);
printf("Could not find boost %s library!\n", qPrintable(lib)); if(!detected_name.isEmpty()) {
return false;
} else {
conf->addLib("-l"+detected_name); conf->addLib("-l"+detected_name);
} found = true;
} else { break;
bool found = false;
foreach(const QString& libDir, libDirs) {
QString detected_name = findBoostLib(libDir, lib);
if(!detected_name.isEmpty()) {
conf->addLib("-l"+detected_name);
found = true;
break;
}
}
if(!found) {
printf("Could not find boost %s library!\n", qPrintable(lib));
return false;
} }
} }
if(!found) {
printf("Could not find boost %s library!\n", qPrintable(lib));
return false;
}
} }
return true; return true;
} }
}; };

View File

@@ -47,7 +47,7 @@
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>APPL</string> <string>APPL</string>
<key>CFBundleGetInfoString</key> <key>CFBundleGetInfoString</key>
<string>2.8.0</string> <string>2.9.4</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleExecutable</key> <key>CFBundleExecutable</key>

View File

@@ -64,6 +64,7 @@ class about : public QDialog, private Ui::AboutDlg{
QString trans_txt = "<p>"+tr("I would like to thank the following people who volunteered to translate qBittorrent:")+"</p>"; QString trans_txt = "<p>"+tr("I would like to thank the following people who volunteered to translate qBittorrent:")+"</p>";
trans_txt += QString::fromUtf8("<ul><li><u>Arabic:</u> SDERAWI (abz8868@msn.com) and sn51234 (nesseyan@gmail.com)</li>\ trans_txt += QString::fromUtf8("<ul><li><u>Arabic:</u> SDERAWI (abz8868@msn.com) and sn51234 (nesseyan@gmail.com)</li>\
<li><u>Armenian:</u> Hrant Ohanyan (hrantohanyan@mail.am)</li>\ <li><u>Armenian:</u> Hrant Ohanyan (hrantohanyan@mail.am)</li>\
<li><u>Belarusian:</u> Mihas Varantsou (meequz@gmail.com)</li>\
<li><u>Brazilian:</u> Nick Marinho (nickmarinho@gmail.com)</li>\ <li><u>Brazilian:</u> Nick Marinho (nickmarinho@gmail.com)</li>\
<li><u>Bulgarian:</u> Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net)</li>\ <li><u>Bulgarian:</u> Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net)</li>\
<li><u>Catalan:</u> Francisco Luque Contreras (frannoe@ya.com)</li>\ <li><u>Catalan:</u> Francisco Luque Contreras (frannoe@ya.com)</li>\
@@ -75,6 +76,7 @@ class about : public QDialog, private Ui::AboutDlg{
<li><u>Dutch:</u> Pieter Heyvaert (pieter_heyvaert@hotmail.com)</li>\ <li><u>Dutch:</u> Pieter Heyvaert (pieter_heyvaert@hotmail.com)</li>\
<li><u>Finnish:</u> Niklas Laxström (nikerabbit@users.sourceforge.net) and Pekka Niemi (pekka.niemi@iki.fi)</li>\ <li><u>Finnish:</u> Niklas Laxström (nikerabbit@users.sourceforge.net) and Pekka Niemi (pekka.niemi@iki.fi)</li>\
<li><u>Galician:</u> Marcos Lans (marcoslansgarza@gmail.com)</li>\ <li><u>Galician:</u> Marcos Lans (marcoslansgarza@gmail.com)</li>\
<li><u>Georgian:</u> Beqa Arabuli (arabulibeqa@yahoo.com)</li>\
<li><u>German:</u> Niels Hoffmann (zentralmaschine@users.sourceforge.net)</li>\ <li><u>German:</u> Niels Hoffmann (zentralmaschine@users.sourceforge.net)</li>\
<li><u>Greek:</u> Tsvetan Bankov (emerge_life@users.sourceforge.net)</li>\ <li><u>Greek:</u> Tsvetan Bankov (emerge_life@users.sourceforge.net)</li>\
<li><u>Hungarian:</u> Majoros Péter (majoros.peterj@gmail.com)</li>\ <li><u>Hungarian:</u> Majoros Péter (majoros.peterj@gmail.com)</li>\

View File

@@ -66,9 +66,14 @@ void DownloadThread::processDlFinished(QNetworkReply* reply) {
const QVariant redirection = reply->attribute(QNetworkRequest::RedirectionTargetAttribute); const QVariant redirection = reply->attribute(QNetworkRequest::RedirectionTargetAttribute);
if(redirection.isValid()) { if(redirection.isValid()) {
// We should redirect // We should redirect
qDebug("Redirecting from %s to %s", qPrintable(url), qPrintable(redirection.toUrl().toString())); QUrl newUrl = redirection.toUrl();
m_redirectMapping.insert(redirection.toUrl().toString(), url); // Resolve relative urls
downloadUrl(redirection.toUrl().toString()); if (newUrl.isRelative())
newUrl = reply->url().resolved(newUrl);
const QString newUrlString = newUrl.toString();
qDebug("Redirecting from %s to %s", qPrintable(url), qPrintable(newUrlString));
m_redirectMapping.insert(newUrlString, url);
downloadUrl(newUrlString);
reply->deleteLater(); reply->deleteLater();
return; return;
} }

View File

@@ -33,5 +33,7 @@
<file>lang/qbittorrent_en.qm</file> <file>lang/qbittorrent_en.qm</file>
<file>lang/qbittorrent_hr.qm</file> <file>lang/qbittorrent_hr.qm</file>
<file>lang/qbittorrent_ro.qm</file> <file>lang/qbittorrent_ro.qm</file>
<file>lang/qbittorrent_ka.qm</file>
<file>lang/qbittorrent_be.qm</file>
</qresource> </qresource>
</RCC> </RCC>

File diff suppressed because it is too large Load Diff

BIN
src/lang/qbittorrent_be.qm Normal file

Binary file not shown.

5343
src/lang/qbittorrent_be.ts Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

BIN
src/lang/qbittorrent_ka.qm Normal file

Binary file not shown.

5325
src/lang/qbittorrent_ka.ts Executable file

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More