summaryrefslogtreecommitdiffstats
path: root/bin/ebuild-ipc.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-09-03 17:11:03 -0700
committerZac Medico <zmedico@gentoo.org>2010-09-03 17:11:03 -0700
commit77fb8383288425e1b79d8092828da0b87e6293aa (patch)
treedee8bdc843b8b6549a65a84013506074339320f6 /bin/ebuild-ipc.py
parent1959bfc2a30aa6160dfa0b454f3af0a545bf40f0 (diff)
downloadportage-77fb8383288425e1b79d8092828da0b87e6293aa.tar.gz
portage-77fb8383288425e1b79d8092828da0b87e6293aa.tar.bz2
portage-77fb8383288425e1b79d8092828da0b87e6293aa.zip
Add AlarmSignal.register() and unregister() classmethods in order to
handle interaction with the signal module.
Diffstat (limited to 'bin/ebuild-ipc.py')
-rwxr-xr-xbin/ebuild-ipc.py5
1 files changed, 2 insertions, 3 deletions
diff --git a/bin/ebuild-ipc.py b/bin/ebuild-ipc.py
index b4a1f7767..b3d28a789 100755
--- a/bin/ebuild-ipc.py
+++ b/bin/ebuild-ipc.py
@@ -49,10 +49,9 @@ class EbuildIpc(object):
start_time = time.time()
try:
- signal.signal(signal.SIGALRM, portage.exception.AlarmSignal.signal_handler)
+ portage.exception.AlarmSignal.register()
signal.alarm(self._COMMUNICATE_TIMEOUT_SECONDS)
returncode = self._communicate(args)
- signal.alarm(0)
return returncode
except portage.exception.AlarmSignal:
time_elapsed = time.time() - start_time
@@ -62,7 +61,7 @@ class EbuildIpc(object):
level=logging.ERROR, noiselevel=-1)
return 1
finally:
- signal.alarm(0)
+ portage.exception.AlarmSignal.unregister()
portage.locks.unlockfile(lock_obj)
def _communicate(self, args):