Browse Source

- Improved files deletion in BT_backup (no more hard-coded extensions that are annoying when adding new ones)

- Improved directory scanning for torrents using a "*.torrent" filter
adaptive-webui-19844
Christophe Dumez 17 years ago
parent
commit
e66af5b271
  1. 2
      TODO
  2. 23
      src/bittorrent.cpp

2
TODO

@ -47,6 +47,8 @@
- Translations update (IN PROGESS) - Translations update (IN PROGESS)
- Optimize and cleanup code - Optimize and cleanup code
- add asserts to squash remaining bugs - add asserts to squash remaining bugs
- Update progress (as well as size) when a torrent's content hash changed (filtered files)
- Check that there is no problem with right click menu in torrent content (all files filtered for example)
- Wait for some bug fixes in libtorrent : - Wait for some bug fixes in libtorrent :
- upload/download limit per torrent - upload/download limit per torrent
- double free or corruption on exit - double free or corruption on exit

23
src/bittorrent.cpp

@ -163,16 +163,13 @@ void bittorrent::deleteTorrent(QString hash, bool permanent){
s->remove_torrent(h); s->remove_torrent(h);
// Remove it from torrent backup directory // Remove it from torrent backup directory
QDir torrentBackup(misc::qBittorrentPath() + "BT_backup"); QDir torrentBackup(misc::qBittorrentPath() + "BT_backup");
torrentBackup.remove(hash+".torrent"); QStringList filters;
torrentBackup.remove(hash+".fastresume"); filters << hash+".*";
torrentBackup.remove(hash+".paused"); QStringList files = torrentBackup.entryList(filters, QDir::Files, QDir::Unsorted);
torrentBackup.remove(hash+".incremental"); QString file;
torrentBackup.remove(hash+".priorities"); foreach(file, files){
torrentBackup.remove(hash+".savepath"); torrentBackup.remove(file);
torrentBackup.remove(hash+".trackers"); }
torrentBackup.remove(hash+".speedLimits");
torrentBackup.remove(hash+".ratio");
torrentBackup.remove(hash+".urlseeds");
// Remove it from ETAs hash tables // Remove it from ETAs hash tables
ETAstats.remove(hash); ETAstats.remove(hash);
ETAs.remove(hash); ETAs.remove(hash);
@ -714,14 +711,14 @@ void bittorrent::scanDirectory(){
if(!scan_dir.isNull()){ if(!scan_dir.isNull()){
QStringList to_add; QStringList to_add;
QDir dir(scan_dir); QDir dir(scan_dir);
QStringList files = dir.entryList(QDir::Files, QDir::Unsorted); QStringList filters;
filters << "*.torrent";
QStringList files = dir.entryList(filters, QDir::Files, QDir::Unsorted);
foreach(file, files){ foreach(file, files){
QString fullPath = dir.path()+QDir::separator()+file; QString fullPath = dir.path()+QDir::separator()+file;
if(fullPath.endsWith(".torrent")){
QFile::rename(fullPath, fullPath+QString(".old")); QFile::rename(fullPath, fullPath+QString(".old"));
to_add << fullPath+QString(".old"); to_add << fullPath+QString(".old");
} }
}
emit scanDirFoundTorrents(to_add); emit scanDirFoundTorrents(to_add);
} }
} }

Loading…
Cancel
Save