rpm/rpm-4.12.0-double-separator-warning.patch

43 lines
1.7 KiB
Diff

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);