Browse Source

- BUGFIX: Do not store and calculate ETA values for finished torrents

adaptive-webui-19844
Christophe Dumez 17 years ago
parent
commit
b5ccf05541
  1. 3
      TODO
  2. 10
      src/bittorrent.cpp

3
TODO

@ -75,7 +75,7 @@ LANGUAGES UPDATED:
beta5->beta6 changelog: beta5->beta6 changelog:
- FEATURE: Split download tab from GUI class and cleaned up code - FEATURE: Split download tab from GUI class and cleaned up code
- FEATURE: A lot of code optimization - FEATURE: A lot of code optimization (CPU & memory usage)
- FEATURE: Added support for .ico format (useful for RSS favicons) - FEATURE: Added support for .ico format (useful for RSS favicons)
- I18N: Updated Greek translation - I18N: Updated Greek translation
- BUGFIX: Made torrent deletion from hard-drive safer - BUGFIX: Made torrent deletion from hard-drive safer
@ -90,4 +90,5 @@ beta5->beta6 changelog:
- BUGFIX: ETA was wrong for torrents with filtered files - BUGFIX: ETA was wrong for torrents with filtered files
- BUGFIX: Display the torrent that are being checked as 'checking' in seeding list - BUGFIX: Display the torrent that are being checked as 'checking' in seeding list
- BUGFIX: Fixed file preview and improved previewable files detection - BUGFIX: Fixed file preview and improved previewable files detection
- BUGFIX: Do not store and calculate ETA values for finished torrents
- I18N: Removed no longer maintained Traditional chinese translation - I18N: Removed no longer maintained Traditional chinese translation

10
src/bittorrent.cpp

@ -105,10 +105,9 @@ void bittorrent::handleDownloadFailure(QString url, QString reason) {
} }
void bittorrent::updateETAs() { void bittorrent::updateETAs() {
std::vector<torrent_handle> handles = s->get_torrents(); QString hash;
unsigned int nbHandles = handles.size(); foreach(hash, unfinishedTorrents) {
for(unsigned int i=0; i<nbHandles; ++i) { QTorrentHandle h = getTorrentHandle(hash);
QTorrentHandle h = handles[i];
if(h.is_valid()) { if(h.is_valid()) {
QString hash = h.hash(); QString hash = h.hash();
QList<qlonglong> listEtas = ETAstats.value(hash, QList<qlonglong>()); QList<qlonglong> listEtas = ETAstats.value(hash, QList<qlonglong>());
@ -247,6 +246,9 @@ void bittorrent::setFinishedTorrent(QString hash) {
if(index != -1) { if(index != -1) {
unfinishedTorrents.removeAt(index); unfinishedTorrents.removeAt(index);
} }
// Remove it from ETAs hash tables
ETAstats.remove(hash);
ETAs.remove(hash);
} }
// Pause a running torrent // Pause a running torrent

Loading…
Cancel
Save