From f16a9799b65214ffe1b07372676386e31ad51801 Mon Sep 17 00:00:00 2001 From: Nigel Kukard Date: Fri, 25 Dec 2009 10:29:22 +0000 Subject: Bumped rpm --- package/rpm/rpm-5.2.0_parentdir-vs-requires.patch | 37 +++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 package/rpm/rpm-5.2.0_parentdir-vs-requires.patch (limited to 'package/rpm/rpm-5.2.0_parentdir-vs-requires.patch') diff --git a/package/rpm/rpm-5.2.0_parentdir-vs-requires.patch b/package/rpm/rpm-5.2.0_parentdir-vs-requires.patch new file mode 100644 index 000000000..309ab254e --- /dev/null +++ b/package/rpm/rpm-5.2.0_parentdir-vs-requires.patch @@ -0,0 +1,37 @@ +Avoid looking up files or directories that this package provides +Included upstream +diff -u --new-file --recursive rpm-5.2.0_vanilla/lib/depends.c rpm-5.2.0_parentdir-vs-requires/lib/depends.c +--- rpm-5.2.0_vanilla/lib/depends.c 2009-05-23 01:23:46.000000000 +0000 ++++ rpm-5.2.0_parentdir-vs-requires/lib/depends.c 2009-09-22 17:00:24.880956271 +0000 +@@ -2095,6 +2095,7 @@ + rpmtsi qi; rpmte q; + tsortInfo tsi; + nsType NSType = rpmdsNSType(requires); ++ const char * N = rpmdsN(requires); + fnpyKey key; + int teType = rpmteType(p); + alKey pkgKey; +@@ -2128,6 +2129,23 @@ + break; + } + ++ /* Avoid looking up files/directories that are "owned" by _THIS_ package. */ ++ if (*N == '/') { ++ rpmfi fi = rpmteFI(p, RPMTAG_BASENAMES); ++ int bingo = 0; ++ ++ fi = rpmfiInit(fi, 0); ++ while (rpmfiNext(fi) >= 0) { ++ const char * fn = rpmfiFN(fi); ++ if (strcmp(N, fn)) ++ continue; ++ bingo = 1; ++ break; ++ } ++ if (bingo) ++ return 0; ++ } ++ + pkgKey = RPMAL_NOMATCH; + key = rpmalSatisfiesDepend(al, requires, &pkgKey); + -- cgit v1.2.3