-
Notifications
You must be signed in to change notification settings - Fork 240
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix hangout in rosbag2 player and recorder when pressing CTRL+C
#1081
Fix hangout in rosbag2 player and recorder when pressing CTRL+C
#1081
Conversation
Disable SIGINT handler in KeyboardHandler instantiated from rosbag2 player and recorder. Since we have already overriding SIGINT on upper python level or inside rclcpp::init() and correctly finishing application with proper calling of all destructors upon receiving SIGINT Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
Gist: https://gist.githubusercontent.com/MichaelOrlov/8b1f44ec30da7cbf685d25a8290e2459/raw/571667e93bb076cef5922df3e096645f31e6cb84/ros2.repos |
Warning on Windows build is known issue existing on baseline and will be handled in #1084 |
https://github.com/Mergifyio backport humble |
✅ Backports have been created
|
) Disable SIGINT handler in KeyboardHandler instantiated from rosbag2 player and recorder. Since we have already overriding SIGINT on upper python level or inside rclcpp::init() and correctly finishing application with proper calling of all destructors upon receiving SIGINT Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Signed-off-by: Michael Orlov <michael.orlov@apex.ai> (cherry picked from commit f629e45)
This pull request has been mentioned on ROS Discourse. There might be relevant details there: https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2022-9-15/27394/1 |
) (#1085) Disable SIGINT handler in KeyboardHandler instantiated from rosbag2 player and recorder. Since we have already overriding SIGINT on upper python level or inside rclcpp::init() and correctly finishing application with proper calling of all destructors upon receiving SIGINT Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Signed-off-by: Michael Orlov <michael.orlov@apex.ai> (cherry picked from commit f629e45) Co-authored-by: Michael Orlov <michael.orlov@apex.ai>
We don't need to explicitly handle
SIGINT
inKeyboardHandler
instantiated from rosbag2 executables since we have already overridingSIGINT
on upper python level or insiderclcpp::init()
and correctly finishing application with proper calling of all destructors upon receivingSIGINT
via checkingrclcpp::ok()
method in infinite loop.Please note that it's almost impossible to cover this fix in unit tests since
gtest
using redirection of the standard input to the file andKeyboardHandler
has detection for this special case and automatically disable keyboard handling from standard input on construction.