diff --git a/src/cmd/cmdsim.rb.in b/src/cmd/cmdsim.rb.in index 866dc83ca5..767738ad16 100755 --- a/src/cmd/cmdsim.rb.in +++ b/src/cmd/cmdsim.rb.in @@ -554,9 +554,19 @@ See https://github.com/gazebosim/gz-sim/issues/168 for more info." options['render_engine_gui_api_backend']) end - Signal.trap("INT") { + # Handle SIGINT and SIGTERM signals + def handle_signal(guiPid, serverPid) self.killProcess(guiPid, "Gazebo Sim GUI", 5.0) self.killProcess(serverPid, "Gazebo Sim Server", 5.0) + end + + Signal.trap("INT") { + handle_signal(guiPid, serverPid) + return 1 + } + + Signal.trap("TERM") { + handle_signal(guiPid, serverPid) return 1 }