mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2024-11-24 18:26:11 +03:00
- Remember paused torrents on startup
This commit is contained in:
parent
6369401150
commit
71e3061c18
4 changed files with 20 additions and 8 deletions
|
@ -454,9 +454,13 @@ void bittorrent::addTorrent(QString path, bool fromScanDir, QString from_url, bo
|
|||
// Start in pause
|
||||
p.paused = true;
|
||||
p.duplicate_is_error = false; // Already checked
|
||||
p.auto_managed = true;
|
||||
p.auto_managed = false; // Because it is added in paused state
|
||||
// Adding torrent to bittorrent session
|
||||
h = s->add_torrent(p);
|
||||
// XXX: Workaround for http://code.rasterbar.com/libtorrent/ticket/454
|
||||
h.pause(false);
|
||||
//Q_ASSERT(!h.is_auto_managed());
|
||||
//Q_ASSERT(h.is_paused());
|
||||
// Check if it worked
|
||||
if(!h.is_valid()) {
|
||||
// No need to keep on, it failed.
|
||||
|
@ -1118,7 +1122,7 @@ void bittorrent::readAlerts() {
|
|||
if(h.is_valid()){
|
||||
emit finishedTorrent(h);
|
||||
QString hash = h.hash();
|
||||
// Create .paused file if necessary
|
||||
// Create .finished file if necessary
|
||||
QFile finished_file(misc::qBittorrentPath()+"BT_backup"+QDir::separator()+hash+".finished");
|
||||
finished_file.open(QIODevice::WriteOnly | QIODevice::Text);
|
||||
finished_file.close();
|
||||
|
|
|
@ -315,16 +315,26 @@ void QTorrentHandle::set_upload_limit(int limit) {
|
|||
h.set_upload_limit(limit);
|
||||
}
|
||||
|
||||
void QTorrentHandle::pause() {
|
||||
void QTorrentHandle::pause(bool create_file) {
|
||||
Q_ASSERT(h.is_valid());
|
||||
h.auto_managed(false);
|
||||
h.pause();
|
||||
// Create .paused file if necessary
|
||||
if(create_file && !QFile::exists(misc::qBittorrentPath()+"BT_backup"+QDir::separator()+hash()+".paused")) {
|
||||
QFile paused_file(misc::qBittorrentPath()+"BT_backup"+QDir::separator()+hash()+".paused");
|
||||
paused_file.open(QIODevice::WriteOnly | QIODevice::Text);
|
||||
paused_file.close();
|
||||
}
|
||||
}
|
||||
|
||||
void QTorrentHandle::resume() {
|
||||
Q_ASSERT(h.is_valid());
|
||||
h.auto_managed(true);
|
||||
h.resume();
|
||||
// Delete .paused file if necessary
|
||||
if(QFile::exists(misc::qBittorrentPath()+"BT_backup"+QDir::separator()+hash()+".paused")) {
|
||||
QFile::remove(misc::qBittorrentPath()+"BT_backup"+QDir::separator()+hash()+".paused");
|
||||
}
|
||||
}
|
||||
|
||||
void QTorrentHandle::remove_url_seed(QString seed) {
|
||||
|
|
|
@ -103,7 +103,7 @@ class QTorrentHandle {
|
|||
|
||||
void set_download_limit(int limit);
|
||||
void set_upload_limit(int limit);
|
||||
void pause();
|
||||
void pause(bool create_file=true);
|
||||
void resume();
|
||||
void remove_url_seed(QString seed);
|
||||
void add_url_seed(QString seed);
|
||||
|
|
|
@ -92,10 +92,8 @@ DEFINES += NDEBUG
|
|||
icon128 \
|
||||
icon192
|
||||
}
|
||||
QMAKE_CXXFLAGS_RELEASE += -fwrapv \
|
||||
-O2
|
||||
QMAKE_CXXFLAGS_DEBUG += -fwrapv \
|
||||
-O0
|
||||
QMAKE_CXXFLAGS_RELEASE += -fwrapv
|
||||
QMAKE_CXXFLAGS_DEBUG += -fwrapv
|
||||
CONFIG += link_pkgconfig
|
||||
PKGCONFIG += "libtorrent-rasterbar libcurl"
|
||||
|
||||
|
|
Loading…
Reference in a new issue