diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-05-26 01:26:20 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-05-26 01:26:20 +0000 |
commit | 0d01f2d786e3fa436ccbd8246e5a20ead6bb2b4f (patch) | |
tree | 1c55b49187d2f15a8567bff24cbafda05028b138 | |
parent | a563596820126be05f6ec1464cde46052698e965 (diff) | |
download | portage-0d01f2d786e3fa436ccbd8246e5a20ead6bb2b4f.tar.gz portage-0d01f2d786e3fa436ccbd8246e5a20ead6bb2b4f.tar.bz2 portage-0d01f2d786e3fa436ccbd8246e5a20ead6bb2b4f.zip |
xmlint can produce garbage output even on success, so only dump the ouput when it fails. See bug #179008.
svn path=/main/trunk/; revision=6631
-rwxr-xr-x | bin/repoman | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/bin/repoman b/bin/repoman index 901b2c3c3..f47911665 100755 --- a/bin/repoman +++ b/bin/repoman @@ -980,10 +980,15 @@ for x in scanlist: else: #Only carry out if in package directory or check forced if xmllint_capable: - st = spawn(["xmllint", "--nonet", "--noout", "--nowarning", "--dtdvalid", - metadata_dtd, os.path.join(checkdir, "metadata.xml")]) + # xmlint can produce garbage output even on success, so only dump + # the ouput when it fails. + st, out = getstatusoutput( + "xmllint --nonet --noout --dtdvalid '%s' '%s'" % \ + (metadata_dtd, os.path.join(checkdir, "metadata.xml"))) if st != os.EX_OK: - print red("!!! metadata.xml is invalid") + print red("!!!") + " metadata.xml is invalid:" + for z in out.splitlines(): + print red("!!! ")+z stats["metadata.bad"]+=1 fails["metadata.bad"].append(x+"/metadata.xml") |