From c1ae873336ae86d663aaa192544d5603c0e635cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=2E=C3=87a=C4=9Flar=20Onur?= Date: Sat, 3 May 2008 12:28:28 +0000 Subject: [PATCH] =?UTF-8?q?caglar@zangetsu=20~=20$=20pisi=20lu=20-d=20DEBU?= =?UTF-8?q?G:=20InstallDB=20initialized=20in=200.192210912704.=20DEBUG:=20?= =?UTF-8?q?RepoDB=20initialized=20in=200.000102996826172.=20DEBUG:=20Packa?= =?UTF-8?q?geDB=20initialized=20in=201.3199570179.=20DEBUG:=20ComponentDB?= =?UTF-8?q?=20initialized=20in=200.4158411026.=20Y=C3=BCkseltilecek=20pake?= =?UTF-8?q?t=20yok.=20Error=20in=20atexit.=5Frun=5Fexitfuncs:=20Traceback?= =?UTF-8?q?=20(most=20recent=20call=20last):=20=20=20File=20"/usr/lib/pyth?= =?UTF-8?q?on2.4/atexit.py",=20line=2024,=20in=20=5Frun=5Fexitfuncs=20=20?= =?UTF-8?q?=20=20=20func(*targs,=20**kargs)=20=20=20File=20"/usr/lib/pardu?= =?UTF-8?q?s/pisi/=5F=5Finit=5F=5F.py",=20line=2068,=20in=20=5Fcleanup=20?= =?UTF-8?q?=20=20=20=20ctx.enable=5Fkeyboard=5Finterrupts()=20=20=20File?= =?UTF-8?q?=20"/usr/lib/pardus/pisi/context.py",=20line=2053,=20in=20enabl?= =?UTF-8?q?e=5Fkeyboard=5Finterrupts=20=20=20=20=20sig=20and=20sig.enable?= =?UTF-8?q?=5Fsignal(signal.SIGINT)=20=20=20File=20"/usr/lib/pardus/pisi/s?= =?UTF-8?q?ignalhandler.py",=20line=2043,=20in=20enable=5Fsignal=20=20=20?= =?UTF-8?q?=20=20signal.signal(sig,=20self.signals[sig].oldhandler=20or=20?= =?UTF-8?q?signal.SIG=5FDFL)=20KeyError:=202=20Error=20in=20sys.exitfunc:?= =?UTF-8?q?=20Sistem=20Hatas=C4=B1:=20Program=20Sonland=C4=B1r=C4=B1ld?= =?UTF-8?q?=C4=B1.=20exceptions.KeyError:=202=20Genel=20yard=C4=B1m=20i?= =?UTF-8?q?=C3=A7in=20l=C3=BCtfen=20'pisi=20help'=20komutunu=20kullan?= =?UTF-8?q?=C4=B1n=C4=B1z.=20Geri-iz:=20=20=20File=20"/usr/lib/python2.4/a?= =?UTF-8?q?texit.py",=20line=2024,=20in=20=5Frun=5Fexitfuncs=20=20=20=20?= =?UTF-8?q?=20func(*targs,=20**kargs)=20=20=20File=20"/usr/lib/pardus/pisi?= =?UTF-8?q?/=5F=5Finit=5F=5F.py",=20line=2068,=20in=20=5Fcleanup=20=20=20?= =?UTF-8?q?=20=20ctx.enable=5Fkeyboard=5Finterrupts()=20=20=20File=20"/usr?= =?UTF-8?q?/lib/pardus/pisi/context.py",=20line=2053,=20in=20enable=5Fkeyb?= =?UTF-8?q?oard=5Finterrupts=20=20=20=20=20sig=20and=20sig.enable=5Fsignal?= =?UTF-8?q?(signal.SIGINT)=20=20=20File=20"/usr/lib/pardus/pisi/signalhand?= =?UTF-8?q?ler.py",=20line=2043,=20in=20enable=5Fsignal=20=20=20=20=20sign?= =?UTF-8?q?al.signal(sig,=20self.signals[sig].oldhandler=20or=20signal.SIG?= =?UTF-8?q?=5FDFL)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pisi/signalhandler.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pisi/signalhandler.py b/pisi/signalhandler.py index f5305443..e876fc45 100644 --- a/pisi/signalhandler.py +++ b/pisi/signalhandler.py @@ -38,9 +38,13 @@ class SignalHandler: def enable_signal(self, sig): if sig in self.signals.keys(): + if self.signals[sig].oldhandler: + oldhandler = self.signals[sig].oldhandler + else: + oldhandler = signal.SIG_DFL pending = self.signals[sig].pending del self.signals[sig] - signal.signal(sig, self.signals[sig].oldhandler or signal.SIG_DFL) + signal.signal(sig, oldhandler) if pending: raise exception[sig]