mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2025-12-17 06:01:33 -06:00
Compare commits
12 Commits
release-2.
...
release-2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f5ea96fec2 | ||
|
|
c571ae900c | ||
|
|
b9f6bbf09b | ||
|
|
916e01f9f8 | ||
|
|
7bd5b0d3b5 | ||
|
|
44574498ad | ||
|
|
ec3d45fc99 | ||
|
|
7908de917a | ||
|
|
0e53a6ab8b | ||
|
|
ba2f8af012 | ||
|
|
a8bc3f6d4d | ||
|
|
0211f42df9 |
10
Changelog
10
Changelog
@@ -1,4 +1,12 @@
|
||||
* Sat Jan 1 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.5.3
|
||||
* Thu Jan 6 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.5.5
|
||||
- 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)
|
||||
|
||||
36
configure
vendored
36
configure
vendored
@@ -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,8 +34,6 @@ Dependency options:
|
||||
executable (please follow
|
||||
instructions in
|
||||
src/geoip/README)
|
||||
--disable-qtsingleapplication Disable use of
|
||||
qtsingleapplication
|
||||
--with-qtsingleapplication=[system|shipped] Use the shipped
|
||||
qtsingleapplication library
|
||||
or the system one
|
||||
@@ -153,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
|
||||
@@ -183,11 +193,6 @@ while [ $# -gt 0 ]; do
|
||||
shift
|
||||
;;
|
||||
|
||||
--disable-qtsingleapplication)
|
||||
QC_DISABLE_qtsingleapplication="Y"
|
||||
shift
|
||||
;;
|
||||
|
||||
--with-qtsingleapplication=*)
|
||||
QC_WITH_QTSINGLEAPPLICATION=$optarg
|
||||
shift
|
||||
@@ -214,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
|
||||
@@ -327,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
|
||||
@@ -338,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);
|
||||
}
|
||||
};
|
||||
@@ -656,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
|
||||
@@ -1603,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
|
||||
|
||||
@@ -20,5 +20,6 @@
|
||||
<dep type='geoip-database'>
|
||||
</dep>
|
||||
<dep type='qtsingleapplication'>
|
||||
<required/>
|
||||
</dep>
|
||||
</qconf>
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[Desktop Entry]
|
||||
Categories=Qt;Network;P2P;
|
||||
Comment=V2.5.3
|
||||
Comment=V2.5.5
|
||||
Exec=qbittorrent %f
|
||||
GenericName=Bittorrent client
|
||||
GenericName[ar]=العميل Bittorrent
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>2.5.3</string>
|
||||
<string>2.5.5</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
|
||||
@@ -88,6 +88,7 @@ protected:
|
||||
}
|
||||
}
|
||||
}
|
||||
if(abort) return;
|
||||
s->set_ip_filter(filter);
|
||||
qDebug("IP Filter thread: finished parsing, filter applied");
|
||||
}
|
||||
|
||||
@@ -54,7 +54,8 @@ public:
|
||||
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;
|
||||
}
|
||||
|
||||
@@ -155,9 +155,6 @@ QBtSession::~QBtSession() {
|
||||
#endif
|
||||
saveSessionState();
|
||||
saveFastResumeData();
|
||||
qDebug("Deleting the session");
|
||||
delete s;
|
||||
qDebug("Session deleted");
|
||||
// Delete our objects
|
||||
if(m_tracker)
|
||||
delete m_tracker;
|
||||
@@ -174,6 +171,8 @@ QBtSession::~QBtSession() {
|
||||
delete httpServer;
|
||||
if(timerETA)
|
||||
delete timerETA;
|
||||
qDebug("Deleting the session");
|
||||
delete s;
|
||||
qDebug("BTSession destructor OUT");
|
||||
}
|
||||
|
||||
@@ -1157,6 +1156,7 @@ void QBtSession::loadTorrentTempData(QTorrentHandle h, QString savePath, bool ma
|
||||
if(TorrentTempData::hasTempData(hash)) {
|
||||
// sequential download
|
||||
h.set_sequential_download(TorrentTempData::isSequential(hash));
|
||||
h.prioritize_first_last_piece(TorrentTempData::isSequential(hash));
|
||||
|
||||
// The following is useless for newly added magnet
|
||||
if(!magnet) {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#VERSION: 1.33
|
||||
#VERSION: 1.34
|
||||
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are met:
|
||||
@@ -35,7 +35,7 @@ def prettyPrinter(dictionary):
|
||||
if isinstance(dictionary[key], str):
|
||||
dictionary[key] = unicode(dictionary[key], 'utf-8')
|
||||
dictionary['size'] = anySizeToBytes(dictionary['size'])
|
||||
print u"%s|%s|%s|%s|%s|%s"%(dictionary['link'],dictionary['name'],dictionary['size'],dictionary['seeds'],dictionary['leech'],dictionary['engine_url'])
|
||||
print u"%s|%s|%s|%s|%s|%s"%(dictionary['link'],dictionary['name'].replace('|', ''),dictionary['size'],dictionary['seeds'],dictionary['leech'],dictionary['engine_url'])
|
||||
|
||||
def anySizeToBytes(size_string):
|
||||
"""
|
||||
|
||||
59
src/src.pro
59
src/src.pro
@@ -2,39 +2,6 @@
|
||||
TEMPLATE = app
|
||||
CONFIG += qt thread
|
||||
|
||||
unix:!macx {
|
||||
exists(../conf.pri) {
|
||||
# generated by configure
|
||||
include(../conf.pri)
|
||||
}
|
||||
}
|
||||
|
||||
nox {
|
||||
QT = core
|
||||
TARGET = qbittorrent-nox
|
||||
DEFINES += DISABLE_GUI
|
||||
} else {
|
||||
QT += xml
|
||||
TARGET = qbittorrent
|
||||
}
|
||||
QT += network
|
||||
|
||||
# Vars
|
||||
LANG_PATH = lang
|
||||
ICONS_PATH = Icons
|
||||
|
||||
# use "CONFIG -= debug" to disable debug
|
||||
CONFIG -= debug
|
||||
CONFIG += release
|
||||
|
||||
# Disable debug output in release mode
|
||||
!debug {
|
||||
DEFINES += QT_NO_DEBUG_OUTPUT
|
||||
}
|
||||
|
||||
# VERSION DEFINES
|
||||
include(../version.pri)
|
||||
|
||||
# Windows specific configuration
|
||||
win32 {
|
||||
include(../winconf.pri)
|
||||
@@ -55,6 +22,32 @@ os2 {
|
||||
include(../os2conf.pri)
|
||||
}
|
||||
|
||||
nox {
|
||||
QT -= gui
|
||||
TARGET = qbittorrent-nox
|
||||
DEFINES += DISABLE_GUI
|
||||
} else {
|
||||
QT += xml
|
||||
TARGET = qbittorrent
|
||||
}
|
||||
QT += network
|
||||
|
||||
# Vars
|
||||
LANG_PATH = lang
|
||||
ICONS_PATH = Icons
|
||||
|
||||
CONFIG(debug, debug|release):message(Project is built in DEBUG mode.)
|
||||
CONFIG(release, debug|release):message(Project is built in RELEASE mode.)
|
||||
|
||||
# Disable debug output in release mode
|
||||
CONFIG(release, debug|release) {
|
||||
message(Disabling debug output.)
|
||||
DEFINES += QT_NO_DEBUG_OUTPUT
|
||||
}
|
||||
|
||||
# VERSION DEFINES
|
||||
include(../version.pri)
|
||||
|
||||
DEFINES += QT_NO_CAST_TO_ASCII
|
||||
# Fast concatenation (Qt >= 4.6)
|
||||
DEFINES += QT_USE_FAST_CONCATENATION QT_USE_FAST_OPERATOR_PLUS
|
||||
|
||||
@@ -240,8 +240,6 @@ void TorrentCreatorDlg::updateOptimalPieceSize()
|
||||
}
|
||||
++i;
|
||||
}while(i<m_piece_sizes.size());
|
||||
qDebug("ASSERT value %d <= %d", (int)(torrent_size/(m_piece_sizes.at(i)*1024.)), NB_PIECES_MIN);
|
||||
Q_ASSERT((double)torrent_size/(m_piece_sizes.at(i)*1024.) > NB_PIECES_MIN);
|
||||
comboPieceSize->setCurrentIndex(i);
|
||||
}
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ void TorrentCreatorThread::run() {
|
||||
add_files(fs, input_path.toUtf8().constData(), file_filter);
|
||||
#else
|
||||
// Adding files to the torrent
|
||||
path full_path = complete(path(input_path.toUtf8().constData()));
|
||||
path full_path = path(input_path.toUtf8().constData());
|
||||
add_files(fs, full_path, file_filter);
|
||||
#endif
|
||||
if(abort) return;
|
||||
@@ -125,12 +125,19 @@ void TorrentCreatorThread::run() {
|
||||
t.set_priv(is_private);
|
||||
if(abort) return;
|
||||
// create the torrent and print it to out
|
||||
ofstream out(complete(path((const char*)save_path.toUtf8())), std::ios_base::binary);
|
||||
bencode(std::ostream_iterator<char>(out), t.generate());
|
||||
emit updateProgress(100);
|
||||
emit creationSuccess(save_path, parent_path);
|
||||
}
|
||||
catch (std::exception& e){
|
||||
emit creationFailure(QString::fromUtf8(e.what()));
|
||||
qDebug("Saving to %s", qPrintable(save_path));
|
||||
std::vector<char> torrent;
|
||||
bencode(back_inserter(torrent), t.generate());
|
||||
QFile outfile(save_path);
|
||||
if(outfile.open(QIODevice::WriteOnly)) {
|
||||
outfile.write(&torrent[0], torrent.size());
|
||||
outfile.close();
|
||||
emit updateProgress(100);
|
||||
emit creationSuccess(save_path, parent_path);
|
||||
} else {
|
||||
throw std::exception();
|
||||
}
|
||||
} catch (std::exception& e){
|
||||
emit creationFailure(QString::fromLocal8Bit(e.what()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
# Generated by the configure file
|
||||
include(conf.pri)
|
||||
|
||||
# COMPILATION SPECIFIC
|
||||
QT += dbus
|
||||
QMAKE_LFLAGS_APP += -rdynamic
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
os2 {
|
||||
DEFINES += VERSION=\'\"v2.5.3\"\'
|
||||
DEFINES += VERSION=\'\"v2.5.5\"\'
|
||||
} else {
|
||||
DEFINES += VERSION=\\\"v2.5.3\\\"
|
||||
DEFINES += VERSION=\\\"v2.5.5\\\"
|
||||
}
|
||||
DEFINES += VERSION_MAJOR=2
|
||||
DEFINES += VERSION_MINOR=5
|
||||
DEFINES += VERSION_BUGFIX=3
|
||||
DEFINES += VERSION_BUGFIX=5
|
||||
|
||||
# NORMAL,ALPHA,BETA,RELEASE_CANDIDATE,DEVEL
|
||||
DEFINES += VERSION_TYPE=NORMAL
|
||||
|
||||
@@ -26,8 +26,9 @@ DEFINES += _WIN32
|
||||
DEFINES += _WIN32_WINNT=0x0500
|
||||
DEFINES += __USE_W32_SOCKETS
|
||||
DEFINES += WITH_SHIPPED_GEOIP_H
|
||||
DEFINES += TORRENT_USE_WPATH
|
||||
|
||||
debug {
|
||||
CONFIG(debug, debug|release) {
|
||||
DEFINES += TORRENT_DEBUG
|
||||
} else {
|
||||
DEFINES += NDEBUG
|
||||
@@ -35,7 +36,7 @@ debug {
|
||||
|
||||
RC_FILE = qbittorrent.rc
|
||||
|
||||
debug {
|
||||
CONFIG(debug, debug|release) {
|
||||
LIBS += libtorrentd.lib \
|
||||
libboost_system-vc90-mt-gd.lib \
|
||||
libboost_filesystem-vc90-mt-gd.lib \
|
||||
|
||||
Reference in New Issue
Block a user