Re,

https://bugzilla.redhat.com/show_bug.cgi?id=636697
You will find in attachment a workaround to fix this issue. However I am looking forward for a proper fix.

This patch only defaults the dictonnary with 0 if the key is not present. Then I do a test to see if the value is 0 and use the RPM instead to get the necessary info. Bug entry has been updated as well.

Thomas
--- __init__.py.ORI     2010-04-27 00:06:37.000000000 +1000
+++ __init__.py 2010-09-23 10:16:04.000000000 +1000
@@ -336,12 +336,19 @@
         exclusivearch = excludearch.copy()
         # Get excludearch/exclusivearch lists for noarch packages
         for pkg in noarch.packages():
-            srcpkg = src_hash[pkg['build_id']]
+            self.logger.debug("buildid=%s" % pkg['build_id'])
+            # Try to get the key for SRPM hash but if there is not any default to 0.
+            srcpkg = src_hash.get(pkg['build_id'],0)
             self.logger.debug("Checking %s for Exclude/ExclusiveArch" % (nevra(pkg),))
-            fn = _get_reference(srcpkg, builds_hash)
-            # if build has no source rpm, check the binary
-            if fn == None:
+            # Check if we do not have a SRPM, then use the pkg info
+            if srcpkg == 0:
                 fn = _get_reference(pkg, builds_hash)
+           else:
+                fn = _get_reference(srcpkg, builds_hash)
+                #if build has no source rpm, check the binary
+               # Note: I don't know if this test is still accurate and useful
+                if fn == None:
+                           fn = _get_reference(pkg, builds_hash)
             try:
                 hdr = koji.get_rpm_header(fn)
             except:
--
buildsys mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/buildsys

Reply via email to