Fixes: NB#242533 - applauncherd.bin is terminated by SIGPIPE

RevBy: Jussi Lind
pull/1/head
Alexey Shilov 15 years ago
parent 7d392017a3
commit 387f5bd1aa

1
debian/changelog vendored

@ -1,6 +1,7 @@
applauncherd (0.25.2) unstable; urgency=low
* Fixes: NB#240051 - applauncherd-launcher: please remove requests of DRM related token
* Fixes: NB#242533 - applauncherd.bin is terminated by SIGPIPE
-- Jussi Lind <jussi.lind@nokia.com> Mon, 04 Apr 2011 16:24:15 +0300

@ -235,6 +235,10 @@ void Daemon::run()
enterBootMode();
break;
case SIGPIPE:
Logger::logDebug("Daemon: SIGPIPE received.");
break;
default:
break;
}
@ -402,6 +406,8 @@ void Daemon::forkBooster(char type, int sleepTime)
signal(SIGCHLD, SIG_DFL);
signal(SIGTERM, SIG_DFL);
signal(SIGUSR1, SIG_DFL);
signal(SIGUSR2, SIG_DFL);
signal(SIGPIPE, SIG_DFL);
// Will get this signal if applauncherd dies
prctl(PR_SET_PDEATHSIG, SIGHUP);

@ -33,6 +33,7 @@ char g_pipeDataSigChld = SIGCHLD;
char g_pipeDataSigTerm = SIGTERM;
char g_pipeDataSigUsr1 = SIGUSR1;
char g_pipeDataSigUsr2 = SIGUSR2;
char g_pipeDataSigPipe = SIGPIPE;
static void sigChldHandler(int)
{
@ -54,6 +55,11 @@ static void sigUsr2Handler(int)
write(g_sigPipeFd, &g_pipeDataSigUsr2, 1);
}
static void sigPipeHandler(int)
{
write(g_sigPipeFd, &g_pipeDataSigPipe, 1);
}
//! Main function
DECL_EXPORT int main(int argc, char * argv[])
{
@ -78,6 +84,7 @@ DECL_EXPORT int main(int argc, char * argv[])
signal(SIGTERM, sigTermHandler); // exit launcher
signal(SIGUSR1, sigUsr1Handler); // enter normal mode from boot mode
signal(SIGUSR2, sigUsr2Handler); // enter boot mode (same as --boot-mode)
signal(SIGPIPE, sigPipeHandler); // broken invoker's pipe
// Run the main loop
myDaemon.run();

Loading…
Cancel
Save