summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHwankyu Jhun <h.jhun@samsung.com>2016-07-28 11:43:36 +0900
committerHwankyu Jhun <h.jhun@samsung.com>2016-07-28 11:43:36 +0900
commita807134e50aacb942b3719e443d303d50d221f67 (patch)
tree0b434b59cf2ec6d62c41f8238c7e2ce86d2dc6da
parent2c573e60a5834ee4aa981f533c7cef05db3217ca (diff)
downloadlaunchpad-a807134e50aacb942b3719e443d303d50d221f67.tar.gz
launchpad-a807134e50aacb942b3719e443d303d50d221f67.tar.bz2
launchpad-a807134e50aacb942b3719e443d303d50d221f67.zip
Close all open fds before executing a loader
Change-Id: I556b4083c7bbe333d1cfe0708d40daed151bcacd Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
-rw-r--r--inc/sigchild.h3
-rwxr-xr-xsrc/launchpad.c3
2 files changed, 3 insertions, 3 deletions
diff --git a/inc/sigchild.h b/inc/sigchild.h
index cfa6476..aaad0e5 100644
--- a/inc/sigchild.h
+++ b/inc/sigchild.h
@@ -235,9 +235,6 @@ static inline int __signal_fini(void)
int i;
#endif
- if (bus)
- g_object_unref(bus);
-
#ifndef PRELOAD_ACTIVATE
for (i = 0; i < _NSIG; i++)
signal(i, SIG_DFL);
diff --git a/src/launchpad.c b/src/launchpad.c
index 2c73289..d55074f 100755
--- a/src/launchpad.c
+++ b/src/launchpad.c
@@ -380,9 +380,12 @@ static int __fork_app_process(int (*child_fn)(void *), void *arg)
static int __exec_loader_process(void *arg)
{
char **argv = arg;
+
__signal_unblock_sigchld();
__signal_fini();
+ _close_all_fds(0);
+
if (execv(argv[LOADER_ARG_PATH], argv) < 0)
_E("Failed to prepare candidate_process");
else