Bug 126230

Summary: after moving a file it rectreates it and continue seeding
Product: [Applications] ktorrent Reporter: Michal Wazgird <cyrylas>
Component: generalAssignee: Joris Guisson <joris.guisson>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Michal Wazgird 2006-04-25 17:58:31 UTC
Version:           1.2 (using KDE 3.5.2, Mandrake Linux Cooker i586 - Cooker)
Compiler:          gcc version 3.3.1 (Mandrake Linux 9.2 3.3.1-2mdk)
OS:                Linux (i686) release 2.6.15-oci2

After moving/deleting file of seeding torrent, KTorrent recreates it as a dummy file and still seedes it.

Or at least I think it seedes that file. I've noticed it after renaming some files i multifile torrent. KTorrent recreated those files with its sizes (filed by zeros?) and continue seeding like notning happened.

How to reproduce:
1. Download a torrent.
2. Rename / delete downloaded file
3. Start KTorrent - file is recreated and seeded.
Comment 1 Joris Guisson 2006-04-25 19:41:50 UTC
You are correct, we should only do this when we are leaching, and then make sure the file gets rechecked if the data is still intact.
Comment 2 Joris Guisson 2006-05-27 13:05:52 UTC
SVN commit 545334 by guisson:

Added data integrity check and auto import, also we do not recreate moved files.

BUG: 126708
BUG: 127484
BUG: 126230



 M  +7 -6      apps/ktorrent/Makefile.am  
 M  +17 -7     apps/ktorrent/ktorrent.cpp  
 M  +14 -2     apps/ktorrent/ktorrent.h  
 M  +10 -1     apps/ktorrent/ktorrentcore.cpp  
 M  +2 -1      apps/ktorrent/ktorrentui.rc  
 M  +53 -23    apps/ktorrent/ktorrentview.cpp  
 M  +5 -2      apps/ktorrent/ktorrentview.h  
 M  +7 -5      apps/ktorrent/ktorrentviewitem.cpp  
 A             apps/ktorrent/scandialog.cpp   [License: GPL (v2+) (wrong address)]
 A             apps/ktorrent/scandialog.h   [License: GPL (v2+) (wrong address)]
 A             apps/ktorrent/scandlgbase.ui  
 M  +3 -1      ktorrent.kdevelop  
 M  +5 -4      libktorrent/Makefile.am  
 A             libktorrent/datachecker (directory)  
 A             libktorrent/datachecker/Makefile.am  
 A             libktorrent/datachecker/datachecker.cpp   plugins/partfileimport/datachecker.cpp#544126 [License: GPL (v2+) (wrong address)]
 A             libktorrent/datachecker/datachecker.h   plugins/partfileimport/datachecker.h#544126 [License: GPL (v2+) (wrong address)]
 A             libktorrent/datachecker/datacheckerlistener.cpp   [License: GPL (v2+) (wrong address)]
 A             libktorrent/datachecker/datacheckerlistener.h   [License: GPL (v2+) (wrong address)]
 A             libktorrent/datachecker/multidatachecker.cpp   plugins/partfileimport/multidatachecker.cpp#544126 [License: GPL (v2+) (wrong address)]
 A             libktorrent/datachecker/multidatachecker.h   plugins/partfileimport/multidatachecker.h#544126 [License: GPL (v2+) (wrong address)]
 A             libktorrent/datachecker/singledatachecker.cpp   plugins/partfileimport/singledatachecker.cpp#544126 [License: GPL (v2+) (wrong address)]
 A             libktorrent/datachecker/singledatachecker.h   plugins/partfileimport/singledatachecker.h#544126 [License: GPL (v2+) (wrong address)]
 M  +2 -0      libktorrent/interfaces/torrentfileinterface.h  
 M  +15 -1     libktorrent/interfaces/torrentinterface.h  
 M  +2 -0      libktorrent/torrent/cache.cpp  
 M  +12 -0     libktorrent/torrent/cache.h  
 M  +42 -2     libktorrent/torrent/chunkmanager.cpp  
 M  +18 -2     libktorrent/torrent/chunkmanager.h  
 M  +17 -1     libktorrent/torrent/chunkselector.cpp  
 M  +7 -0      libktorrent/torrent/chunkselector.h  
 M  +19 -1     libktorrent/torrent/downloader.cpp  
 M  +7 -0      libktorrent/torrent/downloader.h  
 M  +19 -0     libktorrent/torrent/multifilecache.cpp  
 M  +1 -1      libktorrent/torrent/multifilecache.h  
 M  +3 -6      libktorrent/torrent/packet.cpp  
 M  +15 -35    libktorrent/torrent/queuemanager.cpp  
 M  +1 -0      libktorrent/torrent/queuemanager.h  
 M  +16 -2     libktorrent/torrent/singlefilecache.cpp  
 M  +1 -0      libktorrent/torrent/singlefilecache.h  
 M  +44 -9     libktorrent/torrent/torrentcontrol.cpp  
 M  +15 -9     libktorrent/torrent/torrentcontrol.h  
 M  +3 -0      libktorrent/util/fileops.cpp  
 M  +24 -24    plugins/infowidget/iwfiletreeitem.cpp  
 M  +2 -3      plugins/partfileimport/Makefile.am  
 D             plugins/partfileimport/datachecker.cpp  
 D             plugins/partfileimport/datachecker.h  
 M  +15 -3     plugins/partfileimport/importdialog.cpp  
 M  +6 -1      plugins/partfileimport/importdialog.h  
 D             plugins/partfileimport/multidatachecker.cpp  
 D             plugins/partfileimport/multidatachecker.h  
 D             plugins/partfileimport/singledatachecker.cpp  
 D             plugins/partfileimport/singledatachecker.h