diff --git a/debian/changelog b/debian/changelog index 34de9d8..a9aab90 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,6 @@ applauncherd (0.30.4) unstable; urgency=low - * + * Fixes: NB#267579 - Socket file descriptor leaks in applauncherd.bin -- Juha Lintula Wed, 22 Jun 2011 13:33:58 +0300 diff --git a/src/launcherlib/daemon.cpp b/src/launcherlib/daemon.cpp index 6612eca..6bd6b71 100644 --- a/src/launcherlib/daemon.cpp +++ b/src/launcherlib/daemon.cpp @@ -529,6 +529,13 @@ void Daemon::reapZombies() Logger::logDebug("Daemon: Booster (pid=%d) was terminated due to signal %d\n", pid, signal); Logger::logDebug("Daemon: Killing invoker process (pid=%d) by signal %d..\n", invokerPid, signal); + FdMap::iterator fd = m_boosterPidToInvokerFd.find(pid); + if (fd != m_boosterPidToInvokerFd.end()) + { + close((*fd).second); + m_boosterPidToInvokerFd.erase(fd); + } + killProcess(invokerPid, signal); }