From b6fe5166a8bb1311cff016d987ffd4e35769ab19 Mon Sep 17 00:00:00 2001 From: Andrew Resch Date: Sat, 28 Feb 2009 21:05:49 +0000 Subject: [PATCH] Catch exception when removing a checking torrent --- deluge/core/torrentmanager.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/deluge/core/torrentmanager.py b/deluge/core/torrentmanager.py index 44aedca0e..a4a8e2e49 100644 --- a/deluge/core/torrentmanager.py +++ b/deluge/core/torrentmanager.py @@ -738,9 +738,14 @@ class TorrentManager(component.Component): def on_alert_state_changed(self, alert): log.debug("on_alert_state_changed") - torrent_id = str(alert.handle.info_hash()) - self.torrents[torrent_id].update_state() - component.get("EventManager").emit(TorrentStateChangedEvent(torrent_id, self.torrents[torrent_id].state)) + try: + torrent_id = str(alert.handle.info_hash()) + except RuntimeError: + return + + if torrent_id in self.torrents: + self.torrents[torrent_id].update_state() + component.get("EventManager").emit(TorrentStateChangedEvent(torrent_id, self.torrents[torrent_id].state)) def on_alert_save_resume_data(self, alert): log.debug("on_alert_save_resume_data")