diff --git a/couchpotato/core/downloaders/rtorrent/main.py b/couchpotato/core/downloaders/rtorrent/main.py index cfd1dce..4fdecc8 100755 --- a/couchpotato/core/downloaders/rtorrent/main.py +++ b/couchpotato/core/downloaders/rtorrent/main.py @@ -24,6 +24,7 @@ class rTorrent(Downloader): super(rTorrent, self).__init__() addEvent('app.load', self.migrate) + addEvent('setting.save.rtorrent.*.after', self.settingsChanged) def migrate(self): @@ -37,6 +38,14 @@ class rTorrent(Downloader): self.deleteConf('url') + def settingsChanged(self): + # Reset active connection if settings have changed + if self.rt: + log.debug('Settings have changed, closing active connection') + + self.rt = None + return True + def connect(self): # Already connected? if self.rt is not None: diff --git a/couchpotato/core/settings/__init__.py b/couchpotato/core/settings/__init__.py index 3b57517..0e65c77 100644 --- a/couchpotato/core/settings/__init__.py +++ b/couchpotato/core/settings/__init__.py @@ -200,6 +200,7 @@ class Settings(object): # After save (for re-interval etc) fireEvent('setting.save.%s.%s.after' % (section, option), single = True) + fireEvent('setting.save.%s.*.after' % section, single = True) return { 'success': True,