1
mirror of https://github.com/qbittorrent/qBittorrent synced 2025-10-09 18:32:15 +02:00

Compare commits

...

96 Commits

Author SHA1 Message Date
Christophe Dumez
0e8f62b675 Tagged v2.5.4 release 2011-01-06 09:52:04 +00:00
Christophe Dumez
c571ae900c Bump to v2.5.4 2011-01-06 09:24:16 +00:00
Christophe Dumez
b9f6bbf09b BUGFIX: Avoid possible crash on exit when the IP filter is enabled (closes #695945) 2011-01-03 21:34:16 +00:00
Christophe Dumez
916e01f9f8 BUGFIX: Fix issues when search engines results contain a '|' 2011-01-03 19:11:12 +00:00
Christophe Dumez
7bd5b0d3b5 Print the default web UI password on stdout when runing nox 2011-01-02 17:42:11 +00:00
Christophe Dumez
44574498ad Fix configure script 2011-01-02 17:30:54 +00:00
Christophe Dumez
ec3d45fc99 Prioritize first and last pieces when sequential download is enabled 2011-01-02 14:02:27 +00:00
Christophe Dumez
7908de917a Added WPATH DEFINE 2011-01-01 23:30:09 +00:00
Christophe Dumez
0e53a6ab8b Fix compilation in release mode 2011-01-01 22:30:17 +00:00
Christophe Dumez
ba2f8af012 Some encoding fixes 2011-01-01 20:26:47 +00:00
Christophe Dumez
a8bc3f6d4d BUGFIX: Added --enable-debug parameter to the configure script 2011-01-01 17:21:02 +00:00
Christophe Dumez
0211f42df9 Fix Changelog date 2011-01-01 11:55:00 +00:00
Christophe Dumez
0180f46dc9 Updated Changelog 2011-01-01 09:05:08 +00:00
Christophe Dumez
6e4d15e72d Bump to v2.5.3 2010-12-31 12:36:27 +00:00
Christophe Dumez
3e1e992fa8 Improved splash screen code 2010-12-31 12:33:15 +00:00
Christophe Dumez
6051aa57cf BUGFIX: Fix ampersand display in search tabs (closes #695715) 2010-12-30 17:07:39 +00:00
Christophe Dumez
55b0cac61b BUGFIX: Remove empty folders on torrent soft deletion (closes #695174) 2010-12-29 20:31:45 +00:00
Christophe Dumez
28409b83c3 Fix scan dirs saving 2010-12-27 19:28:41 +00:00
Christophe Dumez
eed0b6ca12 Restore Update Url 2010-12-26 12:30:08 +00:00
Christophe Dumez
4b0fae88bc Updated plugin update URL 2010-12-26 09:57:15 +00:00
Christophe Dumez
6ff3de7686 Make compatible with nova2 plugins (new API) 2010-12-26 09:08:28 +00:00
Christophe Dumez
f08d792e67 Improvement to last commit 2010-12-25 09:24:33 +00:00
Christophe Dumez
e2edf62834 BUGFIX: Make sure the number of torrents is properly set on startup (closes #694135) 2010-12-25 09:17:26 +00:00
Christophe Dumez
eb4c449620 Some OS2 changes by Silvan Scherrer 2010-12-24 09:15:16 +00:00
Christophe Dumez
c06386126b BUGFIX: Fix priority up/down for multiple torrents at the same time (closes #692184) 2010-12-19 13:46:13 +00:00
Christophe Dumez
8c854b8a0e Fix compilation error in release mode 2010-12-19 10:19:52 +00:00
Christophe Dumez
749c3a429a Update release date 2010-12-19 08:57:52 +00:00
Christophe Dumez
a6edea2222 Bump to v2.5.2 2010-12-19 08:57:28 +00:00
Christophe Dumez
d66c88d59e Fix possible encoding problem 2010-12-18 19:09:47 +00:00
Christophe Dumez
b92c152d30 Fixes possible crash in the RSS Downloader dialog (when having RSS folders) 2010-12-18 18:54:27 +00:00
Christophe Dumez
148ec32825 Fix possibly uncaught invalid_handle exception 2010-12-18 08:48:23 +00:00
Christophe Dumez
8298b62f56 No longer expand the first folder in the torrent content list (Thanks Ahmad) 2010-12-16 20:45:51 +00:00
Christophe Dumez
53f46875d8 BUGFIX: Fix dangerous usage of vector iterator 2010-12-16 20:37:03 +00:00
Christophe Dumez
a67caf1730 BUGFIX: Fix some 'File Not found' warning in the Web UI 2010-12-13 17:34:20 +00:00
Christophe Dumez
6a38f69fad BUGFIX: Make sure we don't move completed torrent to the temp directory for checking (closes #602938) 2010-12-11 19:32:13 +00:00
Christophe Dumez
d5bf2b2e1f Fix alignment issues in program preferences 2010-12-09 17:19:33 +00:00
Christophe Dumez
f6df1c7fed Updated Polish translation 2010-12-08 18:31:32 +00:00
Christophe Dumez
fa88bce77d Fix wrong slot name 2010-12-08 18:08:45 +00:00
Christophe Dumez
571465ff7e BUGFIX: Fix alternative speed icon staying pressed when disabled 2010-12-05 19:56:38 +00:00
Christophe Dumez
09a3f78a28 Fix error in configure help 2010-12-05 18:17:04 +00:00
Christophe Dumez
f98520e6c2 Bump to v2.5.1 2010-12-05 10:16:52 +00:00
Christophe Dumez
0211f3aee3 BUGFIX: Fix possible crash when right-clicking on a torrent 2010-12-05 10:15:47 +00:00
Christophe Dumez
7c580a87e2 Fix possible crash when right-clicking on a torrent 2010-12-05 10:13:08 +00:00
Christophe Dumez
0dcd33fb6d Branched the v2.5.x series 2010-12-05 08:32:31 +00:00
Christophe Dumez
797a4608bf Disable debug 2010-12-05 08:26:10 +00:00
Christophe Dumez
abb8554c51 Bump to v2.5.0 final 2010-12-05 08:25:27 +00:00
Christophe Dumez
258a3ea3b0 Bump to v2.5.0 final 2010-12-05 08:25:05 +00:00
Christophe Dumez
6d1ad28d8c FEATURE: Download first/last pieces first now applies to all media files in the torrent (Thanks Ahmad) 2010-12-04 20:47:20 +00:00
Christophe Dumez
38aca6af6f BUGFIX: Disable overwrite confirmation in torrent addition dialog (closes # 685269) 2010-12-04 20:02:12 +00:00
Christophe Dumez
0fd8ecd9ee Fix program updater on Windows/Mac 2010-12-04 19:14:14 +00:00
Christophe Dumez
f24224649d Wider torrent addition from URL dialog 2010-12-04 14:18:52 +00:00
Christophe Dumez
b41aa38f39 Code clean up 2010-12-04 14:15:16 +00:00
Christophe Dumez
b267ac169d Code clean up 2010-12-04 14:11:25 +00:00
Christophe Dumez
1c0f1b91e7 Code clean up 2010-12-04 14:09:41 +00:00
Christophe Dumez
9bf673210f Code clean up 2010-12-04 13:58:36 +00:00
Christophe Dumez
42f5cbf2a6 COSMETIC: Use bigger alternative speed icon 2010-12-04 13:55:12 +00:00
Christophe Dumez
45f0383ee2 Several dimension saving fixes 2010-12-04 10:31:14 +00:00
Christophe Dumez
a39c7f52cf Remember torrent import dialog geometry and position 2010-12-04 10:10:05 +00:00
Christophe Dumez
f1ca4f40af Code clean up 2010-12-04 09:59:21 +00:00
Christophe Dumez
62503fb663 Code clean up 2010-12-04 09:51:43 +00:00
Christophe Dumez
0853ae4691 Code clean up 2010-12-04 09:37:13 +00:00
Christophe Dumez
bb19cfce1f Greatly improved the RSS downloader dialog layout 2010-12-04 09:27:28 +00:00
Christophe Dumez
287cdc43c1 Code optimization 2010-12-02 18:21:45 +00:00
Christophe Dumez
79e595c195 Code optimization 2010-12-02 17:36:08 +00:00
Christophe Dumez
d198451bb0 Code clean up 2010-12-02 17:27:01 +00:00
Christophe Dumez
ebf252ce86 Added debug 2010-12-02 17:20:25 +00:00
Christophe Dumez
f9ece8b447 Code clean up 2010-12-02 17:17:50 +00:00
Christophe Dumez
efe5ca6242 Added debug 2010-12-02 17:10:34 +00:00
Christophe Dumez
0dbcf5653d Code clean up 2010-12-02 17:02:13 +00:00
Christophe Dumez
20a201703c Updated bulgarian translation 2010-12-02 15:41:57 +00:00
Christophe Dumez
bfaa6c69fd Fix typo 2010-12-01 19:38:16 +00:00
Christophe Dumez
6744ee8a4d BUGFIX: Improve magnet save path handling (clsoes #683395) 2010-12-01 19:20:27 +00:00
Christophe Dumez
20630e91ec Simplified addMagnetUri function 2010-12-01 19:05:26 +00:00
Christophe Dumez
cec74eb080 Updated Spanish and catalan translations 2010-12-01 16:12:14 +00:00
Christophe Dumez
4e51393dd2 Updated Portuguese and Brazilian translations 2010-11-30 19:08:24 +00:00
Christophe Dumez
5d86930c80 Fix qBtSession important initialization problem
Fix qBittorrent shutdown problem (closes #682576)
2010-11-29 16:55:23 +00:00
Christophe Dumez
cc1b812232 Updated Changelog 2010-11-28 21:13:24 +00:00
Christophe Dumez
0fcbcd0dcd Fix to advanced properties 2010-11-28 21:12:42 +00:00
Christophe Dumez
dd9e290a60 Fix compilation warning 2010-11-28 19:17:32 +00:00
Christophe Dumez
61a05c7e5b Bump to rc3 2010-11-28 14:47:24 +00:00
Christophe Dumez
1c27e2bd35 Updated Dutch translation
Updated Dutch translator name
2010-11-28 14:12:20 +00:00
Christophe Dumez
68f66579ea Updated Changelog 2010-11-28 12:28:42 +00:00
Christophe Dumez
e5eaea8949 Code clean up 2010-11-28 12:25:24 +00:00
Christophe Dumez
ed491cf7cb Updated Croatian and Czech translations 2010-11-28 12:01:51 +00:00
Christophe Dumez
3b3642bbba Initial support for libtorrent v0.16 (still a lot of deprecation warning but it compiles...) 2010-11-28 10:29:59 +00:00
Christophe Dumez
28eddb74ed Updated Hungarian translation, added some debug 2010-11-27 08:56:24 +00:00
Christophe Dumez
401693dccd Fix possible crash when loading columns visual indexes 2010-11-26 18:18:53 +00:00
Christophe Dumez
826e137aa5 Updated German and Traditional Chinese translation 2010-11-26 17:59:35 +00:00
Christophe Dumez
7d4805988e Updated Arabic translation 2010-11-25 19:41:27 +00:00
Christophe Dumez
bc2694bb88 Bump to rc2 2010-11-25 18:11:37 +00:00
Christophe Dumez
19db0d471f Signal / slot fixes 2010-11-24 20:31:14 +00:00
Christophe Dumez
2f337f9191 Updated Italian translation 2010-11-24 19:34:27 +00:00
Christophe Dumez
e05536a115 Fix Serbian flag 2010-11-24 19:26:11 +00:00
Christophe Dumez
7364815ef3 Bump to rc1 2010-11-23 18:28:11 +00:00
Christophe Dumez
bcc6597e93 Updated Serbian translation
Fixed Serbian flag
2010-11-22 22:31:09 +00:00
Christophe Dumez
661e2cb6fc Another compilation fix 2010-11-22 22:00:13 +00:00
120 changed files with 13188 additions and 12368 deletions

View File

@@ -76,7 +76,7 @@ Translations authors:
- Croatian: Oliver Mucafir (oliver.untwist@gmail.com)
- Czech: Jirka Vilim (web@tets.cz)
- Danish: Mathias Nielsen (comoneo@gmail.com)
- Dutch: Joost Schipper (heavyjoost@users.sourceforge.net)
- Dutch: Pieter Heyvaert (pieter_heyvaert@hotmail.com)
- English: Christophe Dumez (chris@qbittorrent.org)
- Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net)
- French: Christophe Dumez (chris@qbittorrent.org)

View File

@@ -1,4 +1,34 @@
* Unreleased - Christophe Dumez <chris@qbittorrent.org> - v2.5.0
* Thu Jan 6 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.5.4
- BUGFIX: Added --enable-debug parameter to the configure script
- BUGFIX: Prioritize first and last pieces when sequential download is enabled
- BUGFIX: Some encoding fixes (Windows)
- BUGFIX: Display default password on stdout when using nox
- BUGFIX: Fix issues when search engines results contain a '|'
- BUGFIX: Avoid possible crash on exit when the IP filter is enabled (closes #695945)
* Sat Jan 1 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.5.3
- BUGFIX: Fix priority up/down for multiple torrents at the same time (closes #692184)
- BUGFIX: Make sure the number of torrents is properly set on startup (closes #694135)
- BUGFIX: Fix scan directories saving (closes #694768)
- BUGFIX: Remove empty folders on torrent soft deletion (closes #695174)
- BUGFIX: Make sure the main window has focus on startup
- BUGFIX: Fix ampersand display in search tabs (closes #695715)
* Sun Dec 19 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.5.2
- BUGFIX: Fix alternative speed icon staying pressed when disabled
- BUGFIX: Fix slot warning on startup
- BUGFIX: Fix alignment issues in program preferences
- BUGFIX: Make sure we don't move completed torrent to the temp directory
for checking (closes #602938)
- BUGFIX: Fix some 'File Not found' warning in the Web UI
- BUGFIX: Fix dangerous usage of vector iterator
- BUGFIX: No longer expand the first folder in the torrent content list
- BUGFIX: Fixes possible crash in the RSS Downloader dialog (closes #691426)
* Sun Dec 5 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.5.1
- BUGFIX: Fix possible crash when right-clicking on a torrent
* Sun Dec 5 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.5.0
- FEATURE: qBittorrent can now act as a tracker
- FEATURE: New and improved RSS feed automated downloader
- FEATURE: Added feature to shutdown qbittorrent on torrents completion
@@ -14,10 +44,18 @@
- FEATURE: Optimized and improved the peer country resolution code
- FEATURE: Download first/last pieces first when sequential download is
enabled (Thanks Ahmad)
- FEATURE: Download first/last pieces first now applies to all media files
in the torrent (Thanks Ahmad)
- BUGFIX: Fix SOCKS5 proxy authentication in search engine(closes #680072)
- BUGFIX: Fix two advanced settings (ignore limits on LAN and protocol
overhead inclusion in rate limiter)
- BUGFIX: Fix strict super seeding (was not working)
- BUGFIX: Improve magnet save path handling (closes #683395)
- BUGFIX: Disable overwrite confirmation in torrent addition dialog (closes # 685269)
- COSMETIC: Replaced message box by on-screen notification for download errors
- COSMETIC: Improved the torrent creation tool appearance
- COSMETIC: Use country flags by Mark James (Thanks to Dmytro Pukha)
- COSMETIC: Use bigger alternative speed icon
- OTHERS: Dropped support for Qt <= 4.4
* Tue Aug 24 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.4.0

37
configure vendored
View File

@@ -18,9 +18,11 @@ Main options:
--help This help text.
Dependency options:
--enable-debug Enable debug mode
--disable-gui Disable qBittorrent
Graphical user interface for
headless running
--enable-debug Enable debug mode
--with-libboost-inc=[path] Path to libboost include
files
--with-libboost-lib=[path] Path to libboost library
@@ -32,7 +34,6 @@ Dependency options:
executable (please follow
instructions in
src/geoip/README)
--disable-qtsingleapplication Disable use of libboost
--with-qtsingleapplication=[system|shipped] Use the shipped
qtsingleapplication library
or the system one
@@ -152,11 +153,21 @@ while [ $# -gt 0 ]; do
shift
;;
--enable-debug)
QC_ENABLE_DEBUG="Y"
shift
;;
--disable-gui)
QC_DISABLE_GUI="Y"
shift
;;
--enable-debug)
QC_ENABLE_DEBUG="Y"
shift
;;
--with-libboost-inc=*)
QC_WITH_LIBBOOST_INC=$optarg
shift
@@ -182,11 +193,6 @@ while [ $# -gt 0 ]; do
shift
;;
--disable-qtsingleapplication)
QC_DISABLE_qtsingleapplication="Y"
shift
;;
--with-qtsingleapplication=*)
QC_WITH_QTSINGLEAPPLICATION=$optarg
shift
@@ -213,13 +219,14 @@ echo PREFIX=$PREFIX
echo BINDIR=$BINDIR
echo DATADIR=$DATADIR
echo EX_QTDIR=$EX_QTDIR
echo QC_ENABLE_DEBUG=$QC_ENABLE_DEBUG
echo QC_DISABLE_GUI=$QC_DISABLE_GUI
echo QC_ENABLE_DEBUG=$QC_ENABLE_DEBUG
echo QC_WITH_LIBBOOST_INC=$QC_WITH_LIBBOOST_INC
echo QC_WITH_LIBBOOST_LIB=$QC_WITH_LIBBOOST_LIB
echo QC_DISABLE_libnotify=$QC_DISABLE_libnotify
echo QC_DISABLE_geoip_database=$QC_DISABLE_geoip_database
echo QC_WITH_GEOIP_DATABASE_EMBEDDED=$QC_WITH_GEOIP_DATABASE_EMBEDDED
echo QC_DISABLE_qtsingleapplication=$QC_DISABLE_qtsingleapplication
echo QC_WITH_QTSINGLEAPPLICATION=$QC_WITH_QTSINGLEAPPLICATION
echo
fi
@@ -326,7 +333,9 @@ cat >$1/modules.cpp <<EOT
/*
-----BEGIN QCMOD-----
name: Qt >= 4.5
arg: enable-debug, Enable debug mode
arg: disable-gui, Disable qBittorrent Graphical user interface for headless running
arg: enable-debug, Enable debug mode
-----END QCMOD-----
*/
class qc_qt4 : public ConfObj
@@ -337,9 +346,14 @@ public:
QString shortname() const { return "Qt 4.5"; }
bool exec()
{
// NOX mode
if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) {
conf->addExtra("CONFIG += nox");
}
}
// Debug mode
if(!conf->getenv("QC_ENABLE_DEBUG").isEmpty()) {
conf->addExtra("CONFIG += debug");
}
return(QT_VERSION >= 0x040500);
}
};
@@ -609,7 +623,7 @@ public:
#line 1 "qtsingleapplication.qcm"
/*
-----BEGIN QCMOD-----
name: libboost
name: qtsingleapplication
arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one
-----END QCMOD-----
*/
@@ -655,7 +669,7 @@ cat >$1/modules_new.cpp <<EOT
o->required = false;
o->disabled = false;
o = new qc_qtsingleapplication(conf);
o->required = false;
o->required = true;
o->disabled = false;
EOT
@@ -1602,13 +1616,14 @@ export PREFIX
export BINDIR
export DATADIR
export EX_QTDIR
export QC_ENABLE_DEBUG
export QC_DISABLE_GUI
export QC_ENABLE_DEBUG
export QC_WITH_LIBBOOST_INC
export QC_WITH_LIBBOOST_LIB
export QC_DISABLE_libnotify
export QC_DISABLE_geoip_database
export QC_WITH_GEOIP_DATABASE_EMBEDDED
export QC_DISABLE_qtsingleapplication
export QC_WITH_QTSINGLEAPPLICATION
export QC_VERBOSE
rm -rf .qconftemp

136
install.os2 Normal file
View File

@@ -0,0 +1,136 @@
QBittorrent installation
0. CONTENTS OF THIS FILE
========================
1. INTRODUCTION
2. REQUIREMENTS
3. INSTALLATION
4. CONTACT
5. CREDITS
6. SUPPORT AND DONATIONS
7. HISTORY
1. INTRODUCTION
===============
Welcome to QBittorrent port for OS/2 and eComStation.
2. REQUIREMENTS
===============
* klibc 0.6.3 or later
ftp://ftp.netlabs.org/pub/gcc/libc-0_6_3-csd3.wpi
* openssl 1.0
ftp://ftp.netlabs.org/pub/unixos2/ssl10.zip
* Qt4 dll
see http://svn.netlabs.org/qt4 for more information whats needed and where to get the latest
3. INSTALLATION
===============
To install QBittorrent, do the following:
klibc
-----
1. Download klibc 0.6.3 csd3 or later.
2. Install the package by double-clicking on the WPI file.
openssl 1.0
-----------
1. Download the zip file
2. Install the files to your libpath eg. x:\ecs\dll
Qt4 dll
-------
1. Download the package
2. Install the package by double-clicking on the wpi file.
QBittorrent
-----------
1. Create a directory for QBittorrent.
2. Extract the QBittorrent package to the new directory.
3. Create a WPS object for QBittorrent.exe.
4. Start QBittorrent
5. Happy torrenting
4. CONTACT
==========
Please send bugreports to:
ecs@aroa.ch
Only bug reports with a reproducable bug are accepted. :-)
5. CREDITS
==========
The port was done by:
Silvan Scherrer aka _diver
Thanks go to:
* Dmitry A. Kuminov
They either helped me when I had some nasty questions or did some testing for
me.
6. SUPPORT AND DONATIONS
========================
QBittorrent port is based on volunteer work. If you would like to support further
development, you can do so in one of the following ways:
* Donate to the Qt4 project: see qt.netlabs.org for more information
* Contribute to the project: Besides actual development, this also includes
maintaining the documentation and the project web site as well as help
for users.
7. HISTORY
==========
2010-12-23
* updated to 2.5.2 code level of QBittorrent
2010-11-22
* updated to 2.4.11 code level of QBittorrent
2010-xx-xx
* initial port

View File

@@ -1,3 +1,10 @@
INCLUDEPATH += $$PWD
exists(conf.pri) {
# to the conf.pri goes all system dependent stuff
include(conf.pri)
}
LIBS += -ltorrent-rasterbar \
-lboost_thread \
-lboost_system \

View File

@@ -20,5 +20,6 @@
<dep type='geoip-database'>
</dep>
<dep type='qtsingleapplication'>
<required/>
</dep>
</qconf>

View File

@@ -1,7 +1,9 @@
/*
-----BEGIN QCMOD-----
name: Qt >= 4.5
arg: enable-debug, Enable debug mode
arg: disable-gui, Disable qBittorrent Graphical user interface for headless running
arg: enable-debug, Enable debug mode
-----END QCMOD-----
*/
class qc_qt4 : public ConfObj
@@ -12,9 +14,14 @@ public:
QString shortname() const { return "Qt 4.5"; }
bool exec()
{
// NOX mode
if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) {
conf->addExtra("CONFIG += nox");
}
}
// Debug mode
if(!conf->getenv("QC_ENABLE_DEBUG").isEmpty()) {
conf->addExtra("CONFIG += debug");
}
return(QT_VERSION >= 0x040500);
}
};

View File

@@ -1,6 +1,6 @@
/*
-----BEGIN QCMOD-----
name: libboost
name: qtsingleapplication
arg: with-qtsingleapplication=[system|shipped], Use the shipped qtsingleapplication library or the system one
-----END QCMOD-----
*/

Binary file not shown.

Before

Width:  |  Height:  |  Size: 439 B

After

Width:  |  Height:  |  Size: 423 B

View File

@@ -1,6 +1,6 @@
[Desktop Entry]
Categories=Qt;Network;P2P;
Comment=V2.5.0
Comment=V2.5.4
Exec=qbittorrent %f
GenericName=Bittorrent client
GenericName[ar]=العميل Bittorrent

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

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

View File

@@ -68,7 +68,7 @@ class about : public QDialog, private Ui::AboutDlg{
<li><u>Croatian:</u> Oliver Mucafir (oliver.untwist@gmail.com)</li>\
<li><u>Czech:</u> Jirka Vilim (web@tets.cz)</li>\
<li><u>Danish:</u> Mathias Nielsen (comoneo@gmail.com)</li>\
<li><u>Dutch:</u> Joost Schipper (heavyjoost@users.sourceforge.net) and Peter Koeleman (peter@peerweb.nl)</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>German:</u> Niels Hoffmann (zentralmaschine@users.sourceforge.net)</li>\
<li><u>Greek:</u> Tsvetan Bankov (emerge_life@users.sourceforge.net)</li>\

View File

@@ -1,57 +1,55 @@
<ui version="4.0" >
<author></author>
<comment></comment>
<exportmacro></exportmacro>
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>downloadFromURL</class>
<widget class="QDialog" name="downloadFromURL" >
<property name="geometry" >
<widget class="QDialog" name="downloadFromURL">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>360</width>
<width>482</width>
<height>220</height>
</rect>
</property>
<property name="windowTitle" >
<property name="windowTitle">
<string>Download from urls</string>
</property>
<layout class="QVBoxLayout" >
<property name="margin" >
<number>9</number>
</property>
<property name="spacing" >
<layout class="QVBoxLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="margin">
<number>9</number>
</property>
<item>
<layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
<layout class="QHBoxLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="icon_lbl" >
<property name="minimumSize" >
<widget class="QLabel" name="icon_lbl">
<property name="minimumSize">
<size>
<width>32</width>
<height>32</height>
</size>
</property>
<property name="maximumSize" >
<property name="maximumSize">
<size>
<width>32</width>
<height>32</height>
</size>
</property>
<property name="text" >
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="downloadURL_lbl" >
<property name="font" >
<widget class="QLabel" name="downloadURL_lbl">
<property name="font">
<font>
<family>Sans Serif</family>
<pointsize>12</pointsize>
@@ -62,7 +60,7 @@
<strikeout>false</strikeout>
</font>
</property>
<property name="text" >
<property name="text">
<string>Download Torrents from URLs</string>
</property>
</widget>
@@ -70,21 +68,21 @@
</layout>
</item>
<item>
<widget class="QTextEdit" name="textUrls" >
<property name="acceptRichText" >
<widget class="QTextEdit" name="textUrls">
<property name="acceptRichText">
<bool>false</bool>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_infos" >
<property name="maximumSize" >
<widget class="QLabel" name="label_infos">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>17</height>
</size>
</property>
<property name="font" >
<property name="font">
<font>
<family>Sans Serif</family>
<pointsize>9</pointsize>
@@ -95,25 +93,25 @@
<strikeout>false</strikeout>
</font>
</property>
<property name="text" >
<property name="text">
<string>Only one URL per line</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" >
<property name="margin" >
<number>0</number>
</property>
<property name="spacing" >
<layout class="QHBoxLayout">
<property name="spacing">
<number>6</number>
</property>
<property name="margin">
<number>0</number>
</property>
<item>
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" >
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
@@ -122,25 +120,25 @@
</spacer>
</item>
<item>
<widget class="QPushButton" name="downloadButton" >
<property name="text" >
<widget class="QPushButton" name="downloadButton">
<property name="text">
<string>Download</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="cancelButton" >
<property name="text" >
<widget class="QPushButton" name="cancelButton">
<property name="text">
<string>Cancel</string>
</property>
</widget>
</item>
<item>
<spacer>
<property name="orientation" >
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" >
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
@@ -152,7 +150,6 @@
</item>
</layout>
</widget>
<pixmapfunction></pixmapfunction>
<resources/>
<connections/>
</ui>

View File

@@ -45,9 +45,9 @@
/** Download Thread **/
downloadThread::downloadThread(QObject* parent) : QObject(parent) {
connect(&networkManager, SIGNAL(finished (QNetworkReply*)), this, SLOT(processDlFinished(QNetworkReply*)));
connect(&m_networkManager, SIGNAL(finished (QNetworkReply*)), this, SLOT(processDlFinished(QNetworkReply*)));
#ifndef QT_NO_OPENSSL
connect(&networkManager, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)), this, SLOT(ignoreSslErrors(QNetworkReply*,QList<QSslError>)));
connect(&m_networkManager, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)), this, SLOT(ignoreSslErrors(QNetworkReply*,QList<QSslError>)));
#endif
}
@@ -63,13 +63,13 @@ void downloadThread::processDlFinished(QNetworkReply* reply) {
if(redirection.isValid()) {
// We should redirect
qDebug("Redirecting from %s to %s", qPrintable(url), qPrintable(redirection.toUrl().toString()));
redirect_mapping.insert(redirection.toUrl().toString(), url);
m_redirectMapping.insert(redirection.toUrl().toString(), url);
downloadUrl(redirection.toUrl().toString());
return;
}
// Checking if it was redirecting, restoring initial URL
if(redirect_mapping.contains(url)) {
url = redirect_mapping.take(url);
if(m_redirectMapping.contains(url)) {
url = m_redirectMapping.take(url);
}
// Success
QString filePath;
@@ -104,7 +104,7 @@ void downloadThread::processDlFinished(QNetworkReply* reply) {
#ifndef DISABLE_GUI
void downloadThread::loadCookies(const QString &host_name, QString url) {
const QList<QByteArray> raw_cookies = RssSettings().getHostNameCookies(host_name);
QNetworkCookieJar *cookie_jar = networkManager.cookieJar();
QNetworkCookieJar *cookie_jar = m_networkManager.cookieJar();
QList<QNetworkCookie> cookies;
qDebug("Loading cookies for host name: %s", qPrintable(host_name));
foreach(const QByteArray& raw_cookie, raw_cookies) {
@@ -115,7 +115,7 @@ void downloadThread::loadCookies(const QString &host_name, QString url) {
}
}
cookie_jar->setCookiesFromUrl(cookies, url);
networkManager.setCookieJar(cookie_jar);
m_networkManager.setCookieJar(cookie_jar);
}
#endif
@@ -148,12 +148,12 @@ QNetworkReply* downloadThread::downloadUrl(QString url){
// Web server banning
request.setRawHeader("User-Agent", "Mozilla/5.0 (X11; U; Linux i686 (x86_64); en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5");
qDebug("Downloading %s...", request.url().toEncoded().data());
qDebug("%d cookies for this URL", networkManager.cookieJar()->cookiesForUrl(url).size());
for(int i=0; i<networkManager.cookieJar()->cookiesForUrl(url).size(); ++i) {
qDebug("%s=%s", networkManager.cookieJar()->cookiesForUrl(url).at(i).name().data(), networkManager.cookieJar()->cookiesForUrl(url).at(i).value().data());
qDebug("Domain: %s, Path: %s", qPrintable(networkManager.cookieJar()->cookiesForUrl(url).at(i).domain()), qPrintable(networkManager.cookieJar()->cookiesForUrl(url).at(i).path()));
qDebug("%d cookies for this URL", m_networkManager.cookieJar()->cookiesForUrl(url).size());
for(int i=0; i<m_networkManager.cookieJar()->cookiesForUrl(url).size(); ++i) {
qDebug("%s=%s", m_networkManager.cookieJar()->cookiesForUrl(url).at(i).name().data(), m_networkManager.cookieJar()->cookiesForUrl(url).at(i).value().data());
qDebug("Domain: %s, Path: %s", qPrintable(m_networkManager.cookieJar()->cookiesForUrl(url).at(i).domain()), qPrintable(m_networkManager.cookieJar()->cookiesForUrl(url).at(i).path()));
}
return networkManager.get(request);
return m_networkManager.get(request);
}
void downloadThread::checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal) {
@@ -200,7 +200,7 @@ void downloadThread::applyProxySettings() {
} else {
proxy.setType(QNetworkProxy::NoProxy);
}
networkManager.setProxy(proxy);
m_networkManager.setProxy(proxy);
}
QString downloadThread::errorCodeToString(QNetworkReply::NetworkError status) {

View File

@@ -41,34 +41,34 @@ class QNetworkAccessManager;
class downloadThread : public QObject {
Q_OBJECT
private:
QNetworkAccessManager networkManager;
QHash<QString, QString> redirect_mapping;
public:
downloadThread(QObject* parent = 0);
QNetworkReply* downloadUrl(QString url);
void downloadTorrentUrl(QString url);
//void setProxy(QString IP, int port, QString username, QString password);
signals:
void downloadFinished(QString url, QString file_path);
void downloadFailure(QString url, QString reason);
public:
downloadThread(QObject* parent);
QNetworkReply* downloadUrl(QString url);
void downloadTorrentUrl(QString url);
//void setProxy(QString IP, int port, QString username, QString password);
protected:
QString errorCodeToString(QNetworkReply::NetworkError status);
void applyProxySettings();
#ifndef DISABLE_GUI
void loadCookies(const QString &host_name, QString url);
#endif
protected slots:
private slots:
void processDlFinished(QNetworkReply* reply);
void checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal);
#ifndef QT_NO_OPENSSL
void ignoreSslErrors(QNetworkReply*,QList<QSslError>);
#endif
private:
QString errorCodeToString(QNetworkReply::NetworkError status);
void applyProxySettings();
#ifndef DISABLE_GUI
void loadCookies(const QString &host_name, QString url);
#endif
private:
QNetworkAccessManager m_networkManager;
QHash<QString, QString> m_redirectMapping;
};
#endif

View File

@@ -88,6 +88,7 @@ protected:
}
}
}
if(abort) return;
s->set_ip_filter(filter);
qDebug("IP Filter thread: finished parsing, filter applied");
}

View File

@@ -118,9 +118,7 @@ void GeoIPManager::loadDatabase(session *s) {
#endif
if(QFile::exists(geoipDBpath(false))) {
qDebug("Loading GeoIP database from %s...", qPrintable(geoipDBpath(false)));
if(!s->load_country_db(geoipDBpath(false).toLocal8Bit().constData())) {
std::cerr << "Failed to load Geoip Database at " << qPrintable(geoipDBpath(false)) << std::endl;
}
s->load_country_db(geoipDBpath(false).toLocal8Bit().constData());
} else {
qDebug("ERROR: Impossible to find local Geoip Database");
}

View File

@@ -40,22 +40,22 @@ class HeadlessLoader: public QObject {
Q_OBJECT
public:
HeadlessLoader(QStringList torrentCmdLine) {
HeadlessLoader(const QStringList &torrentCmdLine) {
Preferences pref;
// Enable Web UI
pref.setWebUiEnabled(true);
// Instanciate Bittorrent Object
BTSession = QBtSession::instance();
connect(BTSession, SIGNAL(newConsoleMessage(QString)), this, SLOT(displayConsoleMessage(QString)));
connect(QBtSession::instance(), SIGNAL(newConsoleMessage(QString)), this, SLOT(displayConsoleMessage(QString)));
// Resume unfinished torrents
BTSession->startUpTorrents();
QBtSession::instance()->startUpTorrents();
// Process command line parameters
processParams(torrentCmdLine);
// Display some information to the user
std::cout << std::endl << "******** " << qPrintable(tr("Information")) << " ********" << std::endl;
std::cout << qPrintable(tr("To control qBittorrent, access the Web UI at http://localhost:%1").arg(QString::number(pref.getWebUiPort()))) << std::endl;
std::cout << qPrintable(tr("The Web UI administrator user name is: %1").arg(pref.getWebUiUsername())) << std::endl;
if(pref.getWebUiPassword() == "f6fdffe48c908deb0f4c3bd36c032e72") {
qDebug() << "Password:" << pref.getWebUiPassword();
if(pref.getWebUiPassword() == "32fe0bd2bb001911bb8bcfe23fc92b63") {
std::cout << qPrintable(tr("The Web UI administrator password is still the default one: %1").arg("adminadmin")) << std::endl;
std::cout << qPrintable(tr("This is a security risk, please consider changing your password from program preferences.")) << std::endl;
}
@@ -72,7 +72,7 @@ public slots:
qApp->quit();
}
void displayConsoleMessage(QString msg) {
void displayConsoleMessage(const QString &msg) {
std::cout << qPrintable(msg) << std::endl;
}
@@ -88,24 +88,21 @@ public slots:
foreach(QString param, params) {
param = param.trimmed();
if(param.startsWith(QString::fromUtf8("http://"), Qt::CaseInsensitive) || param.startsWith(QString::fromUtf8("ftp://"), Qt::CaseInsensitive) || param.startsWith(QString::fromUtf8("https://"), Qt::CaseInsensitive)) {
BTSession->downloadFromUrl(param);
QBtSession::instance()->downloadFromUrl(param);
}else{
if(param.startsWith("bc://bt/", Qt::CaseInsensitive)) {
qDebug("Converting bc link to magnet link");
param = misc::bcLinkToMagnet(param);
}
if(param.startsWith("magnet:", Qt::CaseInsensitive)) {
BTSession->addMagnetUri(param);
QBtSession::instance()->addMagnetUri(param);
} else {
BTSession->addTorrent(param);
QBtSession::instance()->addTorrent(param);
}
}
}
}
private:
QBtSession *BTSession;
};
#endif

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

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