[rpm] - fix regression on addressing main package by its name (#972994)
Panu Matilainen
pmatilai at fedoraproject.org
Tue Jun 11 06:59:02 UTC 2013
commit 4cf31cb6ea7c9e03e8f7ef2880383f0fda8c71b5
Author: Panu Matilainen <pmatilai at redhat.com>
Date: Tue Jun 11 09:58:42 2013 +0300
- fix regression on addressing main package by its name (#972994)
rpm-4.11.1-rc1-lookup-mainpkg.patch | 27 +++++++++++++++++++++++++++
rpm.spec | 8 +++++++-
2 files changed, 34 insertions(+), 1 deletions(-)
---
diff --git a/rpm-4.11.1-rc1-lookup-mainpkg.patch b/rpm-4.11.1-rc1-lookup-mainpkg.patch
new file mode 100644
index 0000000..a41c291
--- /dev/null
+++ b/rpm-4.11.1-rc1-lookup-mainpkg.patch
@@ -0,0 +1,27 @@
+commit eacb69f779cc5fd7b651d7a7cf450b327e5735f8
+Author: Panu Matilainen <pmatilai at redhat.com>
+Date: Tue Jun 11 09:51:48 2013 +0300
+
+ Fix regression on addressing main package by its name (RhBug:972994)
+
+ - The main package name is not known when we start parsing the preamble,
+ so newPackage() is called with NULL name and the early callers use
+ NULL to find it. Populate the name as soon as we know it so
+ various "%foo -n <name>" operations work on the main package too,
+ which got broken by commit 9929459f9967ecfe0a05d557bc42531944faa70a.
+ (cherry picked from commit fed1298af7911145c953da8910fd5f2f15976374)
+
+diff --git a/build/parsePreamble.c b/build/parsePreamble.c
+index f7cc167..e4b1f94 100644
+--- a/build/parsePreamble.c
++++ b/build/parsePreamble.c
+@@ -670,6 +670,9 @@ static rpmRC handlePreambleTag(rpmSpec spec, Package pkg, rpmTagVal tag,
+ if (rpmCharCheck(spec, field, strlen(field), ".-_+%{}"))
+ goto exit;
+ headerPutString(pkg->header, tag, field);
++ /* Main pkg name is unknown at the start, populate as soon as we can */
++ if (pkg == spec->packages)
++ pkg->name = rpmstrPoolId(spec->pool, field, 1);
+ break;
+ case RPMTAG_VERSION:
+ case RPMTAG_RELEASE:
diff --git a/rpm.spec b/rpm.spec
index d251fe6..472315f 100644
--- a/rpm.spec
+++ b/rpm.spec
@@ -22,7 +22,7 @@
Summary: The RPM package management system
Name: rpm
Version: %{rpmver}
-Release: %{?snapver:0.%{snapver}.}1%{?dist}
+Release: %{?snapver:0.%{snapver}.}2%{?dist}
Group: System Environment/Base
Url: http://www.rpm.org/
Source0: http://rpm.org/releases/testing/%{name}-%{srcver}.tar.bz2
@@ -47,6 +47,8 @@ Patch6: rpm-4.9.0-armhfp-logic.patch
# Patches already in upstream
# Filter soname dependencies by name
Patch100: rpm-4.11.x-filter-soname-deps.patch
+# Fix regression on addressing main package by its name
+Patch101: rpm-4.11.1-rc1-lookup-mainpkg.patch
# These are not yet upstream
Patch301: rpm-4.6.0-niagara.patch
@@ -225,6 +227,7 @@ packages on a system.
%patch4 -p1 -b .use-gpg2
%patch100 -p1 -b .filter-soname-deps
+%patch101 -p1 -b .lookup-mainpkg
%patch301 -p1 -b .niagara
%patch302 -p1 -b .geode
@@ -458,6 +461,9 @@ exit 0
%doc COPYING doc/librpm/html/*
%changelog
+* Tue Jun 11 2013 Panu Matilainen <pmatilai at redhat.com> - 4.11.1-0.rc1.2
+- fix regression on addressing main package by its name (#972994)
+
* Mon Jun 10 2013 Panu Matilainen <pmatilai at redhat.com> - 4.11.1-0.rc1.1
- update to 4.11.1-rc1 (http://rpm.org/wiki/Releases/4.11.1)
More information about the scm-commits
mailing list