also remove duplicates if they show up first
This commit is contained in:
parent
80b3ff5b91
commit
3d1a629970
1 changed files with 12 additions and 1 deletions
|
@ -144,6 +144,15 @@ def run_scan():
|
||||||
if os.path.exists(f):
|
if os.path.exists(f):
|
||||||
id = media.get_id(f)
|
id = media.get_id(f)
|
||||||
file = File.get(id)
|
file = File.get(id)
|
||||||
|
if file:
|
||||||
|
f1 = file.fullpath()
|
||||||
|
f2 = os.path.join(prefix, f)
|
||||||
|
if f1 != f2 and os.path.exists(f1) and os.path.exists(f2):
|
||||||
|
logger.debug('file exists in multiple locations %s', id)
|
||||||
|
logger.debug('"%s" vs "%s"', f1, f2)
|
||||||
|
os.chmod(f2, stat.S_IWRITE)
|
||||||
|
os.unlink(f2)
|
||||||
|
continue
|
||||||
if id in ids:
|
if id in ids:
|
||||||
logger.debug('file exists in multiple locations %s', id)
|
logger.debug('file exists in multiple locations %s', id)
|
||||||
if file:
|
if file:
|
||||||
|
@ -182,6 +191,8 @@ def run_scan():
|
||||||
logger.debug('cleaning up %s deleted records', len(gone))
|
logger.debug('cleaning up %s deleted records', len(gone))
|
||||||
for id in gone:
|
for id in gone:
|
||||||
i = Item.get(id)
|
i = Item.get(id)
|
||||||
|
if not i.file or not os.path.exists(i.file.fullpath()):
|
||||||
|
logger.debug('cleaning orphaned record %s %s', i, i.file.fullpath() if i.file else '')
|
||||||
i.remove_file()
|
i.remove_file()
|
||||||
missing = ids - library_items
|
missing = ids - library_items
|
||||||
if missing:
|
if missing:
|
||||||
|
|
Loading…
Reference in a new issue