Module: deluge Branch: master Commit: a827cf6c7aa28023b5fd6aed020983d8db9e1974
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 74c8885..3b61335 100644 --- a/deluge/core/torrent.py +++ b/deluge/core/torrent.py @@ -186,6 +186,11 @@ class Torrent(object): else: self.owner = owner + # 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 ## @@ -871,12 +876,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 fcf1860..93f0a97 100644 --- a/deluge/core/torrentmanager.py +++ b/deluge/core/torrentmanager.py @@ -857,7 +857,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.
