summaryrefslogtreecommitdiffstats
path: root/libopkg/opkg_cmd.c
diff options
context:
space:
mode:
authorgraham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>2009-11-16 19:17:55 (EST)
committer graham.gower <graham.gower@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>2009-11-16 19:17:55 (EST)
commit603bec779ab8f0751bc48b0394aadd261fafdcde (patch)
treeae5483583ee4b4185500b68870c25b7e23cd52d6 /libopkg/opkg_cmd.c
parentcd3404e22aa9baba2c617ce4d4d7f53e3f54853c (diff)
Use vfork()/execvp() instead of system().
Parts based on a patch by Mike Westerhof for OpenEmbedded. git-svn-id: http://opkg.googlecode.com/svn/trunk@320 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358
Diffstat (limited to 'libopkg/opkg_cmd.c')
-rw-r--r--libopkg/opkg_cmd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libopkg/opkg_cmd.c b/libopkg/opkg_cmd.c
index b86e670..a93483f 100644
--- a/libopkg/opkg_cmd.c
+++ b/libopkg/opkg_cmd.c
@@ -340,7 +340,8 @@ static int opkg_finalize_intercepts(opkg_intercept_t ctx)
sprintf_alloc (&path, "%s/%s", ctx->statedir, de->d_name);
if (access (path, X_OK) == 0) {
- xsystem (path);
+ const char *argv[] = {"sh", "-c", path, NULL};
+ xsystem (argv);
}
free (path);
}