diff --git a/rosbridge_server/src/rosbridge_server/websocket_handler.py b/rosbridge_server/src/rosbridge_server/websocket_handler.py index 31194cb63..83ac06f49 100755 --- a/rosbridge_server/src/rosbridge_server/websocket_handler.py +++ b/rosbridge_server/src/rosbridge_server/websocket_handler.py @@ -167,7 +167,8 @@ def prewrite_message(self, message, binary): # Use a try block because the log decorator doesn't cooperate with @coroutine. try: with self._write_lock: - yield self.write_message(message, binary) + future_handle = self.write_message(message, binary) + yield future_handle except WebSocketClosedError: rospy.logwarn('WebSocketClosedError: Tried to write to a closed websocket') raise