Use signal and sys.exit to fix shutdown in joint_state_publisher (#139)
This commit is contained in:
parent
735ca9e870
commit
7fcfc19115
|
@ -19,7 +19,8 @@ import xml.dom.minidom
|
||||||
from sensor_msgs.msg import JointState
|
from sensor_msgs.msg import JointState
|
||||||
from math import pi
|
from math import pi
|
||||||
from threading import Thread
|
from threading import Thread
|
||||||
from sys import argv
|
import sys
|
||||||
|
import signal
|
||||||
|
|
||||||
RANGE = 10000
|
RANGE = 10000
|
||||||
|
|
||||||
|
@ -117,7 +118,7 @@ class JointStatePublisher():
|
||||||
use_gui = get_param("use_gui", False)
|
use_gui = get_param("use_gui", False)
|
||||||
|
|
||||||
if use_gui:
|
if use_gui:
|
||||||
self.app = QApplication(argv)
|
self.app = QApplication(sys.argv)
|
||||||
self.gui = JointStatePublisherGui("Joint State Publisher", self)
|
self.gui = JointStatePublisherGui("Joint State Publisher", self)
|
||||||
self.gui.show()
|
self.gui.show()
|
||||||
else:
|
else:
|
||||||
|
@ -364,7 +365,8 @@ if __name__ == '__main__':
|
||||||
jsp.loop()
|
jsp.loop()
|
||||||
else:
|
else:
|
||||||
Thread(target=jsp.loop).start()
|
Thread(target=jsp.loop).start()
|
||||||
jsp.app.exec_()
|
signal.signal(signal.SIGINT, signal.SIG_DFL)
|
||||||
|
sys.exit(jsp.app.exec_())
|
||||||
|
|
||||||
except rospy.ROSInterruptException:
|
except rospy.ROSInterruptException:
|
||||||
pass
|
pass
|
||||||
|
|
Loading…
Reference in New Issue