- Reduce the double separator spec parse error into a warning (#1065563)

This commit is contained in:
Panu Matilainen 2014-09-17 09:59:57 +03:00
parent 814137c1a7
commit 2e5e062433
2 changed files with 47 additions and 1 deletions

View File

@ -0,0 +1,42 @@
commit 5e0f3e6298bde0c6e44bd4db956a7287f9ff3f88
Author: Panu Matilainen <pmatilai@redhat.com>
Date: Wed Sep 17 09:47:54 2014 +0300
Turn invalid double separator error into a warning
- As hysterical as it seems, people keep banging their heads into this:
older distros have these invalid dependencies deployed etc and people
do expect to create srpms and do test-builds on newer distros they're
running themselves. Which, put that way, seems rather reasonable...
- For history reference, the sanity check was originally introduced in
commit b2cf1471bbe2c35e3c36510a9e3f59919d8ed2c8 and
67ccf8d99630f4edad0ea16dddaca0a3355fba00,
- Backported from commit 1b3f7547c532b1f5ad68228571f1716d5be5b455
diff --git a/build/parseReqs.c b/build/parseReqs.c
index 1427111..3cf1ce0 100644
--- a/build/parseReqs.c
+++ b/build/parseReqs.c
@@ -40,7 +40,6 @@ static int checkSep(const char *s, char c, char **emsg)
const char *sep = strchr(s, c);
if (sep && strchr(sep + 1, c)) {
rasprintf(emsg, "Invalid version (double separator '%c'): %s", c, s);
- return 1;
}
return 0;
}
@@ -198,11 +197,12 @@ rpmRC parseRCPOT(rpmSpec spec, Package pkg, const char *field, rpmTagVal tagN,
exit:
if (emsg) {
+ int lvl = (rc == RPMRC_OK) ? RPMLOG_WARNING : RPMLOG_ERR;
/* Automatic dependencies don't relate to spec lines */
if (tagflags & (RPMSENSE_FIND_REQUIRES|RPMSENSE_FIND_PROVIDES)) {
- rpmlog(RPMLOG_ERR, "%s: %s\n", emsg, r);
+ rpmlog(lvl, "%s: %s\n", emsg, r);
} else {
- rpmlog(RPMLOG_ERR, _("line %d: %s: %s\n"),
+ rpmlog(lvl, _("line %d: %s: %s\n"),
spec->lineNum, emsg, spec->line);
}
free(emsg);

View File

@ -27,7 +27,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/rpm-4.12.x/%{name}-%{srcver}.tar.bz2
@ -48,6 +48,7 @@ Patch3: rpm-4.9.90-no-man-dirs.patch
Patch4: rpm-4.8.1-use-gpg2.patch
# Patches already upstream:
Patch100: rpm-4.12.0-double-separator-warning.patch
# These are not yet upstream
Patch302: rpm-4.7.1-geode-i686.patch
@ -526,6 +527,9 @@ exit 0
%doc doc/librpm/html/*
%changelog
* Wed Sep 17 2014 Panu Matilainen <pmatilai@redhat.com> - 4.12.0-2
- Reduce the double separator spec parse error into a warning (#1065563)
* Tue Sep 16 2014 Panu Matilainen <pmatilai@redhat.com> - 4.12.0-1
- Update to rpm-4.12.0 final (http://rpm.org/wiki/Releases/4.12.0)