mirror of
https://git.deluge-torrent.org/deluge
synced 2025-08-08 09:28:41 +00:00
Fix signalreceiver when switching between daemons
This commit is contained in:
parent
8597110e02
commit
7128b129d4
2 changed files with 5 additions and 7 deletions
|
@ -48,10 +48,9 @@ class Signals(component.Component):
|
||||||
self.config.save()
|
self.config.save()
|
||||||
|
|
||||||
def start(self):
|
def start(self):
|
||||||
if not client.is_localhost():
|
self.receiver.set_remote(not client.is_localhost())
|
||||||
self.receiver.set_remote(True)
|
|
||||||
|
|
||||||
self.receiver.run()
|
self.receiver.run()
|
||||||
|
|
||||||
self.receiver.connect_to_signal("torrent_added",
|
self.receiver.connect_to_signal("torrent_added",
|
||||||
self.torrent_added_signal)
|
self.torrent_added_signal)
|
||||||
self.receiver.connect_to_signal("torrent_removed",
|
self.receiver.connect_to_signal("torrent_removed",
|
||||||
|
|
|
@ -51,7 +51,6 @@ class SignalReceiver(ThreadingMixIn, SimpleXMLRPCServer.SimpleXMLRPCServer):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
log.debug("SignalReceiver init..")
|
log.debug("SignalReceiver init..")
|
||||||
# Set to true so that the receiver thread will exit
|
# Set to true so that the receiver thread will exit
|
||||||
self._shutdown = False
|
|
||||||
|
|
||||||
self.signals = {}
|
self.signals = {}
|
||||||
self.emitted_signals = []
|
self.emitted_signals = []
|
||||||
|
@ -89,6 +88,7 @@ class SignalReceiver(ThreadingMixIn, SimpleXMLRPCServer.SimpleXMLRPCServer):
|
||||||
|
|
||||||
def shutdown(self):
|
def shutdown(self):
|
||||||
"""Shutdowns receiver thread"""
|
"""Shutdowns receiver thread"""
|
||||||
|
log.debug("Shutting down signalreceiver")
|
||||||
self._shutdown = True
|
self._shutdown = True
|
||||||
# De-register with the daemon so it doesn't try to send us more signals
|
# De-register with the daemon so it doesn't try to send us more signals
|
||||||
try:
|
try:
|
||||||
|
@ -97,8 +97,6 @@ class SignalReceiver(ThreadingMixIn, SimpleXMLRPCServer.SimpleXMLRPCServer):
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
log.debug("Unable to deregister client from server: %s", e)
|
log.debug("Unable to deregister client from server: %s", e)
|
||||||
|
|
||||||
log.debug("Shutting down signalreceiver")
|
|
||||||
|
|
||||||
self.socket.shutdown(socket.SHUT_RDWR)
|
self.socket.shutdown(socket.SHUT_RDWR)
|
||||||
log.debug("Joining listening thread..")
|
log.debug("Joining listening thread..")
|
||||||
self.listening_thread.join(1.0)
|
self.listening_thread.join(1.0)
|
||||||
|
@ -111,6 +109,7 @@ class SignalReceiver(ThreadingMixIn, SimpleXMLRPCServer.SimpleXMLRPCServer):
|
||||||
def run(self):
|
def run(self):
|
||||||
"""This gets called when we start the thread"""
|
"""This gets called when we start the thread"""
|
||||||
# Register the signal receiver with the core
|
# Register the signal receiver with the core
|
||||||
|
self._shutdown = False
|
||||||
client.register_client(str(self.port))
|
client.register_client(str(self.port))
|
||||||
|
|
||||||
self.listening_thread = threading.Thread(target=self.handle_thread)
|
self.listening_thread = threading.Thread(target=self.handle_thread)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue