diff --git a/rclpy/actions/minimal_action_server/examples_rclpy_minimal_action_server/server_single_goal.py b/rclpy/actions/minimal_action_server/examples_rclpy_minimal_action_server/server_single_goal.py index fe8824c6..a172963c 100644 --- a/rclpy/actions/minimal_action_server/examples_rclpy_minimal_action_server/server_single_goal.py +++ b/rclpy/actions/minimal_action_server/examples_rclpy_minimal_action_server/server_single_goal.py @@ -100,7 +100,12 @@ def execute_callback(self, goal_handle): # Sleep for demonstration purposes time.sleep(1) - goal_handle.succeed() + with self._goal_lock: + if not goal_handle.is_active: + self.get_logger().info('Goal aborted') + return Fibonacci.Result() + + goal_handle.succeed() # Populate result message result = Fibonacci.Result()