From 809632794fb1e9de61a5e6c1bc975e9fa9789de4 Mon Sep 17 00:00:00 2001 From: shortcutme Date: Sun, 18 Feb 2018 05:49:26 +0100 Subject: [PATCH] Allow broadcast to fail --- plugins/AnnounceLocal/BroadcastServer.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/plugins/AnnounceLocal/BroadcastServer.py b/plugins/AnnounceLocal/BroadcastServer.py index 8ed40991..6f7db938 100644 --- a/plugins/AnnounceLocal/BroadcastServer.py +++ b/plugins/AnnounceLocal/BroadcastServer.py @@ -104,10 +104,13 @@ class BroadcastServer(object): self.log.debug("Broadcast using ips %s on port %s: %s" % (my_ips, port, message["cmd"])) for my_ip in my_ips: - sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) - sock.bind((my_ip, 0)) - sock.sendto(msgpack.packb(message), addr) + try: + sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) + sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) + sock.bind((my_ip, 0)) + sock.sendto(msgpack.packb(message), addr) + except Exception as err: + self.log.warning("Error sending broadcast using ip %s: %s" % (my_ip, err)) def handleMessage(self, addr, message): self.log.debug("Got from %s: %s" % (addr, message["cmd"]))