As reported with #323, the plugin crashes if there is a wrong config. On humble, the controller_manager tries to access unavailable state interfaces (I'll investigate more).
* [#329 Don't crash if a wrong config was detected (backport #324)](https://github.com/ros-controls/gz_ros2_control/pull/329) has been created for branch `iron`
* [#330 Don't crash if a wrong config was detected (backport #324)](https://github.com/ros-controls/gz_ros2_control/pull/330) has been created for branch `humble`
* [#331 Don't crash if a wrong config was detected (backport #324)](https://github.com/ros-controls/gz_ros2_control/pull/331) has been created for branch `jazzy`
As reported with #323, the plugin crashes if there is a wrong config. On humble, the controller_manager tries to access unavailable state interfaces (I'll investigate more).
But also on rolling it crashes, despite the URDF parsers throws an error if a joint does not exists. The
configure()
method returns butPreUpdate
,PostUpdate
andDeconstructor
are accessing thethis->dataPtr->controller_manager_
https://github.com/ros-controls/gz_ros2_control/blob/45035076408e6014cc911e8d4bc169572a25008c/gz_ros2_control/src/gz_ros2_control_plugin.cpp#L394-L397Is there maybe another way to deactivate the plugin properly and not even call the Update methods?