From 98d17bb13a5be219a541089c92e59d3169a44efd Mon Sep 17 00:00:00 2001 From: mbryan Date: Wed, 18 Jan 2023 15:56:42 +0700 Subject: [PATCH] Ensure costmap_2d_cloud does not seg fault on SIGINT. One of several clean shutdown issues being address via Issue #3271. Signed-off-by: mbryan --- nav2_costmap_2d/src/costmap_2d_cloud.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/nav2_costmap_2d/src/costmap_2d_cloud.cpp b/nav2_costmap_2d/src/costmap_2d_cloud.cpp index 8c40709be6d..fba76d11d60 100644 --- a/nav2_costmap_2d/src/costmap_2d_cloud.cpp +++ b/nav2_costmap_2d/src/costmap_2d_cloud.cpp @@ -225,6 +225,12 @@ int main(int argc, char ** argv) "voxel_grid", rclcpp::SystemDefaultsQoS(), voxelCallback); rclcpp::spin(g_node->get_node_base_interface()); + + // Force dtors to fire before shutdown(). We see segfaults otherwise. + g_node.reset(); + pub_marked.reset(); + pub_unknown.reset(); + rclcpp::shutdown(); return 0;