From 8c01f6c0de363fc3cd26652e30353875826df9c4 Mon Sep 17 00:00:00 2001 From: Brad Martin Date: Wed, 7 Aug 2024 13:53:03 -0400 Subject: [PATCH] Avoid stale subscription when unsubscribing during resubscription (#947) If a client asks to subscribe to the same topic more than once, then disconnects, only a pending 'new' subscription may get deleted, leaving the 'old' subscription active indefinitely. Signed-off-by: Brad Martin --- rosbridge_library/src/rosbridge_library/internal/subscribers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rosbridge_library/src/rosbridge_library/internal/subscribers.py b/rosbridge_library/src/rosbridge_library/internal/subscribers.py index 0bb94a809..c698c0b79 100644 --- a/rosbridge_library/src/rosbridge_library/internal/subscribers.py +++ b/rosbridge_library/src/rosbridge_library/internal/subscribers.py @@ -196,7 +196,7 @@ def unsubscribe(self, client_id): with self.rlock: if client_id in self.new_subscriptions: del self.new_subscriptions[client_id] - else: + if client_id in self.subscriptions: del self.subscriptions[client_id] def has_subscribers(self):