diff options
author | Chris Larson <clarson@mvista.com> | 2009-07-22 15:39:37 -0700 |
---|---|---|
committer | Chris Larson <clarson@mvista.com> | 2009-08-19 17:43:17 -0700 |
commit | 9f35410c925716d58d8f8cff3cf5f8296894d1cd (patch) | |
tree | 810e65570016a032bbfc096009f40773b07c9317 /recipes/opkg | |
parent | 83a6a8745d0d7b82844dd1f026d479fa328274cf (diff) |
opkg: explicitly clean up the opkg-intercept dirs rather than rm -rf.
Signed-off-by: Chris Larson <clarson@mvista.com>
Diffstat (limited to 'recipes/opkg')
-rw-r--r-- | recipes/opkg/opkg.inc | 5 | ||||
-rw-r--r-- | recipes/opkg/opkg/opkg-intercept-cleanup.patch | 47 |
2 files changed, 50 insertions, 2 deletions
diff --git a/recipes/opkg/opkg.inc b/recipes/opkg/opkg.inc index ba58c42a15..c880dd660e 100644 --- a/recipes/opkg/opkg.inc +++ b/recipes/opkg/opkg.inc @@ -4,10 +4,11 @@ SECTION = "base" LICENSE = "GPL" DEPENDS = "curl gpgme" PV = "0.1.6+svnr${SRCREV}" -INC_PR = "r14" +INC_PR = "r15" SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \ - file://opkg_unarchive.patch;patch=1;maxrev=201" + file://opkg_unarchive.patch;patch=1;maxrev=201 \ + file://opkg-intercept-cleanup.patch;patch=1" SRC_URI += "file://configure" diff --git a/recipes/opkg/opkg/opkg-intercept-cleanup.patch b/recipes/opkg/opkg/opkg-intercept-cleanup.patch new file mode 100644 index 0000000000..12893e3852 --- /dev/null +++ b/recipes/opkg/opkg/opkg-intercept-cleanup.patch @@ -0,0 +1,47 @@ +--- + libopkg/opkg_cmd.c | 13 +++++++++---- + 1 file changed, 9 insertions(+), 4 deletions(-) + +--- trunk.orig/libopkg/opkg_cmd.c ++++ trunk/libopkg/opkg_cmd.c +@@ -19,6 +19,7 @@ + #include "includes.h" + #include <dirent.h> + #include <glob.h> ++#include <unistd.h> + + #include "opkg_conf.h" + #include "opkg_cmd.h" +@@ -350,7 +351,6 @@ static opkg_intercept_t opkg_prep_interc + + static int opkg_finalize_intercepts(opkg_intercept_t ctx) + { +- char *cmd; + DIR *dir; + int err = 0; + +@@ -376,6 +376,10 @@ static int opkg_finalize_intercepts(opkg + err = errno; + perror (de->d_name); + } ++ if (unlink (path)) { ++ err = errno; ++ perror (path); ++ } + } + free (path); + } +@@ -383,9 +387,10 @@ static int opkg_finalize_intercepts(opkg + } else + perror (ctx->statedir); + +- sprintf_alloc (&cmd, "rm -rf %s", ctx->statedir); +- err = system (cmd); +- free (cmd); ++ if (rmdir (ctx->statedir)) { ++ err = errno; ++ perror (ctx->statedir); ++ } + + free (ctx->statedir); + free (ctx); |