mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-31 17:04:34 +00:00
- prevent downloadFromUrl flooding
This commit is contained in:
parent
8f7de730cc
commit
c7592a6dc8
@ -50,6 +50,7 @@
|
||||
- BUGFIX: Improved incremental download
|
||||
- BUGFIX: Improved unicode support
|
||||
- BUGFIX: Made torrent deletion from hard-drive safer
|
||||
- BUGFIX: Prevent downloadFromUrl flooding
|
||||
- COSMETIC: Redesigned torrent properties a little
|
||||
- COSMETIC: Redesigned options a little
|
||||
- COSMETIC: Display more logs messages concerning features
|
||||
|
1
TODO
1
TODO
@ -80,3 +80,4 @@ beta5->beta6 changelog:
|
||||
- BUGFIX: Fixed a bug when switching from finished to downloading list
|
||||
- BUGFIX: Showing checking progress for paused torrents too
|
||||
- BUGFIX: Fixed progress column sorting on startup
|
||||
- BUGFIX: Prevent downloadFromUrl flooding
|
||||
|
@ -135,6 +135,7 @@ class downloadThread : public QThread {
|
||||
|
||||
private:
|
||||
QStringList url_list;
|
||||
QStringList downloading_list;
|
||||
QMutex mutex;
|
||||
QWaitCondition condition;
|
||||
bool abort;
|
||||
@ -160,7 +161,9 @@ class downloadThread : public QThread {
|
||||
|
||||
void downloadUrl(QString url){
|
||||
QMutexLocker locker(&mutex);
|
||||
if(downloading_list.contains(url)) return;
|
||||
url_list << url;
|
||||
downloading_list << url;
|
||||
if(!isRunning()){
|
||||
start();
|
||||
}else{
|
||||
@ -195,6 +198,11 @@ class downloadThread : public QThread {
|
||||
subThreads.removeAt(index);
|
||||
delete st;
|
||||
emit downloadFinished(url, path);
|
||||
mutex.lock();
|
||||
index = downloading_list.indexOf(url);
|
||||
Q_ASSERT(index != -1);
|
||||
downloading_list.removeAt(index);
|
||||
mutex.unlock();
|
||||
}
|
||||
|
||||
void propagateDownloadFailure(subDownloadThread* st, QString url, QString reason){
|
||||
@ -203,6 +211,11 @@ class downloadThread : public QThread {
|
||||
subThreads.removeAt(index);
|
||||
delete st;
|
||||
emit downloadFailure(url, reason);
|
||||
mutex.lock();
|
||||
index = downloading_list.indexOf(url);
|
||||
Q_ASSERT(index != -1);
|
||||
downloading_list.removeAt(index);
|
||||
mutex.unlock();
|
||||
}
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user