aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Fernando J. Pereda <ferdy@ferdyx.org> 2007-02-14 22:58:12 +0000
committerAvatar Fernando J. Pereda <ferdy@ferdyx.org> 2007-02-14 22:58:12 +0000
commit7469173d5b827f45ce67737c179b2ad7e9be3539 (patch)
tree523b46da944d6cfbcd1a6849ca4a4ce42eeb9757
parentf55991f1d35ed3b6b2dd47ed41691bb63dd4301c (diff)
downloadpaludis-7469173d5b827f45ce67737c179b2ad7e9be3539.tar.gz
paludis-7469173d5b827f45ce67737c179b2ad7e9be3539.tar.xz
Ignore subsequent sigints to hopefully avoid possible races.
-rw-r--r--src/clients/paludis/install.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/clients/paludis/install.cc b/src/clients/paludis/install.cc
index f3a00ed..63838c3 100644
--- a/src/clients/paludis/install.cc
+++ b/src/clients/paludis/install.cc
@@ -243,6 +243,10 @@ namespace
void
InstallKilledCatcher::_signal_handler(int sig)
{
+ // ignore further signals to avoid a race if
+ // a sigal arrives while this handler hasn't finished
+ signal(sig, SIG_IGN);
+
static bool recursing(false);
if (recursing)