- for tmpfile in TMPFILES:
- os.unlink(tmpfile)
- # ignore: RuntimeError: Set changed size during iteration
- except RuntimeError:
- logging.debug('caught expection RuntimeError, ignoring')
+ logging.debug('Unmounted %s' % device)
+ except RuntimeError:
+ logging.debug('RuntimeError while umount %s, ignoring' % device)
+
+ for tmppath in TMPFILES.copy():
+ try:
+ if os.path.isdir(tmppath) and not os.path.islink(tmppath):
+ # symbolic links to directories are ignored
+ # without the check it will throw an OSError
+ shutil.rmtree(tmppath, onerror=del_failed)
+ logging.debug('temporary directory %s deleted' % tmppath)
+ unregister_tmpfile(tmppath)
+ elif os.path.isfile:
+ os.unlink(tmppath)
+ logging.debug('temporary file %s deleted' % tmppath)
+ unregister_tmpfile(tmppath)
+ except RuntimeError:
+ msg = 'RuntimeError while removing temporary %s, ignoring'
+ logging.debug(msg % tmppath)