]> git.decadent.org.uk Git - dak.git/blobdiff - dak/process_policy.py
dak/admin.py: Add commands to manipulate the suite-component mapping
[dak.git] / dak / process_policy.py
index db459607588971ae19c1b80b6dc04dd85b44560a..ddd05b7c65166f18b4011dafe47a5f82053ec7ac 100755 (executable)
@@ -81,7 +81,8 @@ def do_comments(dir, srcqueue, opref, npref, line, fn, transaction):
 
         if opref != npref:
             newcomm = npref + comm[len(opref):]
-            transaction.fs.move(os.path.join(dir, comm), os.path.join(dir, newcomm))
+            newcomm = utils.find_next_free(os.path.join(dir, newcomm))
+            transaction.fs.move(os.path.join(dir, comm), newcomm)
 
 ################################################################################
 
@@ -162,16 +163,19 @@ def comment_accept(upload, srcqueue, comments, transaction):
         if upload.source is not None:
             for f in [ df.poolfile for df in upload.source.srcfiles ]:
                 dst = os.path.join(copydir, f.basename)
-                fs.copy(f.fullpath, dst, mode=mode)
+                if not os.path.exists(dst):
+                    fs.copy(f.fullpath, dst, mode=mode)
 
         for db_binary in upload.binaries:
             f = db_binary.poolfile
             dst = os.path.join(copydir, f.basename)
-            fs.copy(f.fullpath, dst, mode=mode)
+            if not os.path.exists(dst):
+                fs.copy(f.fullpath, dst, mode=mode)
 
         src = os.path.join(upload.policy_queue.path, upload.changes.changesname)
         dst = os.path.join(copydir, upload.changes.changesname)
-        fs.copy(src, dst, mode=mode)
+        if not os.path.exists(dst):
+            fs.copy(src, dst, mode=mode)
 
     if upload.source is not None and not Options['No-Action']:
         urgency = upload.changes.urgency