[RARSLAVE] Eliminate duplicates when finding deleteable files
authorIra W. Snyder <devel@irasnyder.com>
Thu, 28 Dec 2006 07:28:34 +0000 (23:28 -0800)
committerIra W. Snyder <devel@irasnyder.com>
Thu, 28 Dec 2006 07:28:34 +0000 (23:28 -0800)
Use a set() to eliminate duplicates when searching for deletable files.
This fixes the OSError that happens when the file cannot be found because
it was already deleted.

Signed-off-by: Ira W. Snyder <devel@irasnyder.com>
rarslave.py

index bd79779..6ffe57f 100644 (file)
@@ -340,7 +340,9 @@ def find_deleteable_files (dir, p2file):
        DELETE_REGEX = config.get_value ('regular expressions', 'delete_regex')
        dregex = re.compile (DELETE_REGEX, re.IGNORECASE)
 
        DELETE_REGEX = config.get_value ('regular expressions', 'delete_regex')
        dregex = re.compile (DELETE_REGEX, re.IGNORECASE)
 
-       return [f for f in likely if dregex.match (f)]
+       dfiles = [f for f in likely if dregex.match (f)]
+       dset = set(dfiles) # to eliminate dupes
+       return list(dset)
 
 def printlist (li):
        for f in li:
 
 def printlist (li):
        for f in li: