summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/IceGrid/Activator.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/cpp/src/IceGrid/Activator.cpp b/cpp/src/IceGrid/Activator.cpp
index 5f266631199..0da11f2d1ae 100644
--- a/cpp/src/IceGrid/Activator.cpp
+++ b/cpp/src/IceGrid/Activator.cpp
@@ -623,6 +623,16 @@ Activator::activate(const string& name,
//
//
+ // Unblock signals blocked by IceUtil::CtrlCHandler.
+ //
+ sigset_t sigs;
+ sigemptyset(&sigs);
+ sigaddset(&sigs, SIGHUP);
+ sigaddset(&sigs, SIGINT);
+ sigaddset(&sigs, SIGTERM);
+ sigprocmask(SIG_UNBLOCK, &sigs, 0);
+
+ //
// Change the uid/gid under which the process will run.
//
if(setgid(gid) == -1)