Blob Blame History Raw
commit 0904d34bc9286b903b79f8fc42afc3f7cb63a9ad
Author: Valentina Mukhamedzhanova <vmukhame@redhat.com>
Date:   Mon Jan 4 15:18:21 2016 +0100

    Make sure filename doesn't already contain a checksum. BZ#1104840

diff --git a/createrepo/utils.py b/createrepo/utils.py
index b0d92ec..697728b 100644
--- a/createrepo/utils.py
+++ b/createrepo/utils.py
@@ -18,6 +18,7 @@
 
 import os
 import os.path
+import re
 import sys
 import bz2
 import gzip
@@ -173,6 +174,9 @@ def checksum_and_rename(fn_path, sumtype='sha256'):
     csum = misc.checksum(sumtype, fn_path)
     fn = os.path.basename(fn_path)
     fndir = os.path.dirname(fn_path)
+    fn_match = re.match(r'[0-9A-Fa-f]{32,128}-(.+)', fn)
+    if fn_match:
+        fn = fn_match.groups()[0]
     csum_fn = csum + '-' + fn
     csum_path = os.path.join(fndir, csum_fn)
     os.rename(fn_path, csum_path)