Commit 07bec037 authored by Paul McCarthy's avatar Paul McCarthy
Browse files

Paths passed to removeDuplicates must exist. Immv/cp scripts raise error

when called programmatically.
parent 02629feb
......@@ -58,13 +58,13 @@ def main(argv=None):
fileGroups=fslimage.FILE_GROUPS)
for src in srcs:
try:
imcp.imcp(src, dest, useDefaultExt=True)
except Exception as e:
print(e)
break
imcp.imcp(src, dest, useDefaultExt=True)
if __name__ == '__main__':
main()
try:
main()
except Exception as e:
print(e)
sys.exit(1)
......@@ -59,13 +59,12 @@ def main(argv=None):
fileGroups=fslimage.FILE_GROUPS)
for src in srcs:
try:
imcp.immv(src, dest, useDefaultExt=True)
except Exception as e:
print(e)
break
imcp.immv(src, dest, useDefaultExt=True)
if __name__ == '__main__':
main()
try:
main()
except Exception as e:
print(e)
sys.exit(1)
......@@ -246,7 +246,10 @@ def removeDuplicates(paths, allowedExts=None, fileGroups=None):
['001.img', '002.img', '003.img']
:arg paths: List of paths to reduce.
A :exc:`PathError` is raised if any of the paths do not exist.
:arg paths: List of paths to reduce. If ``allowedExts`` is not
``None``, may be incomplete.
:arg allowedExts: Allowed/recognised file extensions.
......@@ -257,10 +260,19 @@ def removeDuplicates(paths, allowedExts=None, fileGroups=None):
for path in paths:
path = addExt(path,
mustExist=True,
allowedExts=allowedExts,
fileGroups=fileGroups)
groupFiles = getFileGroup(path, allowedExts, fileGroups)
if not any([g in unique for g in groupFiles]):
unique.append(path)
if len(groupFiles) == 0:
if path not in unique:
unique.append(path)
elif not any([p in unique for p in groupFiles]):
unique.append(groupFiles[0])
return unique
......@@ -320,7 +332,7 @@ def getFileGroup(path, allowedExts=None, fileGroups=None, fullPaths=True):
for group in fileGroups:
if ext not in group:
if ext != '' and ext not in group:
continue
groupFiles = [base + s for s in group]
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment