From 3653ab79c3d926d1b14224d2ceffcdeb1cc15c58 Mon Sep 17 00:00:00 2001
From: Duong Dang <nddang@laas.fr>
Date: Wed, 18 May 2011 18:04:14 +0200
Subject: [PATCH] Quick hack to quit child thread in python console.

---
 python/ThreadInterruptibleLoop.py | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/python/ThreadInterruptibleLoop.py b/python/ThreadInterruptibleLoop.py
index 9c96896..1e1295e 100644
--- a/python/ThreadInterruptibleLoop.py
+++ b/python/ThreadInterruptibleLoop.py
@@ -1,4 +1,4 @@
-import signal, threading, time
+import threading, time
 
 class ThreadInterruptibleLoop(threading.Thread):
     isQuit=False
@@ -11,7 +11,7 @@ class ThreadInterruptibleLoop(threading.Thread):
 
     def __init__(self):
         threading.Thread.__init__(self)
-        self.setSigHandler()
+        self.daemon = True
 
     def quit(self): self.isQuit = True
     def setPlay(self,mode):
@@ -36,22 +36,17 @@ class ThreadInterruptibleLoop(threading.Thread):
         self.isRunning=False
         print 'Thread loop will now end.'
 
-    def sigHandler(self,signum, frame):
-        print 'Catch signal ', signum
-        signal.signal(signum, self.previousHandler)
-        self.quit()
-    def setSigHandler(self):
-        self.previousHandler = signal.getsignal(signal.SIGINT)
-        signal.signal(signal.SIGINT, (lambda x,y: self.sigHandler(x,y)) )
 
     def start(self):
         self.setPlay(True)
         threading.Thread.start(self)
+
     def restart(self):
         self.join()
         self.play()
         self.setSigHandler()
         threading.Thread.start(self)
+
     def loop(self):
         None
 
-- 
GitLab