From 1c7d6584a7811b7785ae5c1e378f14b5ba0971cf Mon Sep 17 00:00:00 2001 From: takeshi_hoshina Date: Mon, 2 Nov 2020 11:07:33 +0900 Subject: basesystem-jj recipes --- ...ve_maintainer_scripts-use-strict-matching.patch | 56 ---------------------- 1 file changed, 56 deletions(-) delete mode 100644 external/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch (limited to 'external/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch') diff --git a/external/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch b/external/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch deleted file mode 100644 index ec160290..00000000 --- a/external/poky/meta/recipes-devtools/opkg/opkg/0001-remove_maintainer_scripts-use-strict-matching.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 55c4ad666e76281bdd0db55fa6f4ab2744fea7e4 Mon Sep 17 00:00:00 2001 -From: Alejandro del Castillo -Date: Tue, 4 Sep 2018 18:06:00 -0500 -Subject: [PATCH] remove_maintainer_scripts: use strict matching - -The function is using a glob to select which metadata files needs to be -deleted during package removal, on the info_dir. However, the glob may -match metadata files from packages with similar names. For example, -during removal of package glibc-binary-localedata-de-at, the current -logic was also removing the metadata for -glibc-binary-localedata-de-at.iso-8859-1. Add check for an exact match -before deletion. - -Fixes bugzilla: 12905 - -Upstream-Status: Submitted [https://groups.google.com/forum/#!topic/opkg-devel/Fr40Yt0NBno] -Signed-off-by: Alejandro del Castillo ---- - libopkg/opkg_remove.c | 14 +++++++++++--- - 1 file changed, 11 insertions(+), 3 deletions(-) - -diff --git a/libopkg/opkg_remove.c b/libopkg/opkg_remove.c -index 82125fa..3936628 100644 ---- a/libopkg/opkg_remove.c -+++ b/libopkg/opkg_remove.c -@@ -137,7 +137,7 @@ void remove_maintainer_scripts(pkg_t * pkg) - { - unsigned int i; - int err; -- char *globpattern; -+ char *globpattern, *filename, *lastdot; - glob_t globbuf; - - if (opkg_config->noaction) -@@ -151,8 +151,16 @@ void remove_maintainer_scripts(pkg_t * pkg) - return; - - for (i = 0; i < globbuf.gl_pathc; i++) { -- opkg_msg(INFO, "Deleting %s.\n", globbuf.gl_pathv[i]); -- unlink(globbuf.gl_pathv[i]); -+ filename = xstrdup(basename(globbuf.gl_pathv[i])); -+ lastdot = strrchr(filename, '.'); -+ *lastdot = '\0'; -+ // Only delete files that match the package name (the glob may match files -+ // with similar names) -+ if (!strcmp(filename, pkg->name)) { -+ opkg_msg(INFO, "Deleting %s.\n", globbuf.gl_pathv[i]); -+ unlink(globbuf.gl_pathv[i]); -+ } -+ free(filename); - } - globfree(&globbuf); - } --- -2.18.0 - -- cgit 1.2.3-korg