Silence errors the right way.
[grml2usb.git] / grml2usb
index 598a173..92c2cbf 100755 (executable)
--- a/grml2usb
+++ b/grml2usb
@@ -166,14 +166,17 @@ def cleanup():
     proc = subprocess.Popen(["sync"])
     proc.wait()
 
-    try:
-        for device in MOUNTED:
+    for device in MOUNTED:
+        try:
             unmount(device, "")
-        for tmpfile in TMPFILES:
+        except RuntimeError:
+            logging.debug('RuntimeError while umount %s, ignoring' % device)
+    for tmpfile in TMPFILES:
+        try:
             os.unlink(tmpfile)
-    # ignore: RuntimeError: Set changed size during iteration
-    except RuntimeError:
-        logging.debug('caught exception RuntimeError, ignoring')
+        except RuntimeError:
+            msg = 'RuntimeError while removing temporary %s, ignoring'
+            logging.debug(msg % tmpfile)
 
 
 def register_tmpfile(path):
@@ -1797,7 +1800,7 @@ def main():
         for flavour in GRML_FLAVOURS:
             logging.info("Note: you can boot flavour %s using '%s' on the commandline.", flavour, flavour)
 
-        # finally be politely :)
+        # finally be polite :)
         logging.info("Finished execution of grml2usb (%s). Have fun with your grml system.", PROG_VERSION)
 
     except Exception, error: