From c1aec8671a58be7c055e761563426f03f3ade7a5 Mon Sep 17 00:00:00 2001 From: Christophe Dumez Date: Sat, 8 Jan 2011 13:41:15 +0000 Subject: [PATCH] Added back removal of uneeded files on torrent deletion (but not do remove the ones that are complete) --- src/qtlibtorrent/qbtsession.cpp | 7 +++---- src/qtlibtorrent/qtorrenthandle.cpp | 4 +++- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/qtlibtorrent/qbtsession.cpp b/src/qtlibtorrent/qbtsession.cpp index 948fefd2c..3c684e2ad 100644 --- a/src/qtlibtorrent/qbtsession.cpp +++ b/src/qtlibtorrent/qbtsession.cpp @@ -667,15 +667,14 @@ void QBtSession::deleteTorrent(QString hash, bool delete_local_files) { if(h.has_metadata()) uneeded_files = h.uneeded_files_path(); s->remove_torrent(h); - // Remove unneeded files - // XXX: Disabled this now that uneeded files are hidden - /*foreach(const QString &uneeded_file, uneeded_files) { + // Remove unneeded and incomplete files + foreach(const QString &uneeded_file, uneeded_files) { qDebug("Removing uneeded file: %s", qPrintable(uneeded_file)); misc::safeRemove(uneeded_file); const QString parent_folder = misc::branchPath(uneeded_file); qDebug("Attempt to remove parent folder (if empty): %s", qPrintable(parent_folder)); QDir().rmpath(parent_folder); - }*/ + } } // Remove it from torrent backup directory QDir torrentBackup(misc::BTBackupLocation()); diff --git a/src/qtlibtorrent/qtorrenthandle.cpp b/src/qtlibtorrent/qtorrenthandle.cpp index 7053d2236..a7f896dce 100644 --- a/src/qtlibtorrent/qtorrenthandle.cpp +++ b/src/qtlibtorrent/qtorrenthandle.cpp @@ -325,10 +325,12 @@ QStringList QTorrentHandle::uneeded_files_path() const { QDir saveDir(save_path()); QStringList res; std::vector fp = torrent_handle::file_priorities(); + vector progress; + torrent_handle::file_progress(progress); torrent_info::file_iterator fi = torrent_handle::get_torrent_info().begin_files(); int i = 0; while(fi != torrent_handle::get_torrent_info().end_files()) { - if(fp[i] == 0) + if(fp[i] == 0 && progress[i] < 1.) res << QDir::cleanPath(saveDir.absoluteFilePath(filepath(*fi))); fi++; ++i;