1
0
mirror of https://github.com/sashacmc/photo-importer.git synced 2026-06-09 16:43:31 +02:00

Fix dryrun

This commit is contained in:
sashacmc
2026-06-03 19:05:15 +02:00
parent 764e53fd12
commit ecefee584b
2 changed files with 29 additions and 14 deletions
+12 -1
View File
@@ -75,8 +75,19 @@ class FileProp:
self.__out_list = set()
self.__exiftool = exiftool.ExifToolHelper()
def close(self):
if self.__exiftool is not None:
self.__exiftool.terminate()
self.__exiftool = None
def __del__(self):
self.__exiftool.terminate()
self.close()
def __enter__(self):
return self
def __exit__(self, exc_type, exc_val, exc_tb):
self.close()
def __prepare_ext_to_type(self):
self.ext_to_type = {}
+17 -13
View File
@@ -37,17 +37,20 @@ class Mover:
self.__stat['processed'] = 0
self.__stat['errors'] = 0
res = []
for fname in self.__filenames:
try:
prop = self.__file_prop.get(fname)
new_fname = self.__move_file(fname, prop)
if new_fname:
res.append((fname, new_fname, prop))
except Exception as ex:
logging.error('Move files exception: %s', ex)
self.__stat['errors'] += 1
try:
for fname in self.__filenames:
try:
prop = self.__file_prop.get(fname)
new_fname = self.__move_file(fname, prop)
if new_fname:
res.append((fname, new_fname, prop))
except Exception as ex:
logging.error('Move files exception: %s', ex)
self.__stat['errors'] += 1
self.__stat['processed'] += 1
self.__stat['processed'] += 1
finally:
self.__file_prop.close()
return res
@@ -104,6 +107,8 @@ class Mover:
return new_fname
def __move(self, src, dst):
if self.__dryrun:
return
if self.__use_shutil:
shutil.move(src, dst)
else:
@@ -111,6 +116,8 @@ class Mover:
raise SystemError(f'mv "{src}" "{dst}" failed')
def __copy(self, src, dst):
if self.__dryrun:
return
if self.__use_shutil:
shutil.copy2(src, dst)
else:
@@ -118,9 +125,6 @@ class Mover:
raise SystemError(f'cp "{src}" "{dst}" failed')
def __run(self, args):
if self.__dryrun:
return True
with subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE) as proc:
proc.wait()
info = proc.stdout.read().strip()