]> git.decadent.org.uk Git - dak.git/blobdiff - dak/process_new.py
upload.source can be null, fall back to upload.changes
[dak.git] / dak / process_new.py
index 92104435ae1552ab4bd529f640a92e0cd3884e3a..1d136bea36a58473b67ba62c52cc24df2bb5f1cb 100755 (executable)
@@ -121,11 +121,13 @@ class Priority_Completer:
 
 def takenover_binaries(upload, missing, session):
     rows = []
+    source = upload.source.source if upload.source else upload.changes.source
     binaries = set([x.package for x in upload.binaries])
     for m in missing:
         if m['type'] != 'dsc':
             binaries.remove(m['package'])
     if binaries:
+        source = upload.binaries[0].source.source
         suite = upload.target_suite.overridesuite or \
                     upload.target_suite.suite_name
         suites = [s[0] for s in session.query(Suite.suite_name).filter \
@@ -134,7 +136,7 @@ def takenover_binaries(upload, missing, session):
         rows = session.query(DBSource.source, DBBinary.package).distinct(). \
                              filter(DBBinary.package.in_(binaries)). \
                              join(DBBinary.source). \
-                             filter(DBSource.source != upload.source.source). \
+                             filter(DBSource.source != source). \
                              join(DBBinary.suites). \
                              filter(Suite.suite_name.in_(suites)). \
                              order_by(DBSource.source, DBBinary.package).all()