Module: deluge Branch: 1.3-stable Commit: 60fac28217ed709be2883670157d13fcdf485122
Author: Andrew Resch <[email protected]> Date: Sun Oct 10 12:34:13 2010 -0700 Keep a torrent paused after a forced recheck if it was paused to start. --- deluge/core/torrent.py | 8 ++++++++ deluge/core/torrentmanager.py | 9 ++++++++- 2 files changed, 16 insertions(+), 1 deletions(-) diff --git a/deluge/core/torrent.py b/deluge/core/torrent.py index 2423635..50a05b2 100644 --- a/deluge/core/torrent.py +++ b/deluge/core/torrent.py @@ -179,6 +179,11 @@ class Torrent(object): else: self.time_added = time.time() + # Keep track if we're forcing a recheck of the torrent so that we can + # repause it after its done if necessary + self.forcing_recheck = False + self.forcing_recheck_paused = False + log.debug("Torrent object created.") ## Options methods ## @@ -859,12 +864,15 @@ class Torrent(object): def force_recheck(self): """Forces a recheck of the torrents pieces""" + paused = self.handle.is_paused() try: self.handle.force_recheck() self.handle.resume() except Exception, e: log.debug("Unable to force recheck: %s", e) return False + self.forcing_recheck = True + self.forcing_recheck_paused = paused return True def rename_files(self, filenames): diff --git a/deluge/core/torrentmanager.py b/deluge/core/torrentmanager.py index 5e137c6..4ce881c 100644 --- a/deluge/core/torrentmanager.py +++ b/deluge/core/torrentmanager.py @@ -849,7 +849,14 @@ class TorrentManager(component.Component): torrent = self.torrents[str(alert.handle.info_hash())] except: return - + + # Check to see if we're forcing a recheck and set it back to paused + # if necessary + if torrent.forcing_recheck: + torrent.forcing_recheck = False + if torrent.forcing_recheck_paused: + torrent.handle.pause() + # Set the torrent state torrent.update_state() -- You received this message because you are subscribed to the Google Groups "deluge-commit" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/deluge-commit?hl=en.
