Fix usage of --force in combination with --fat16
authorMichael Prokop <mika@grml.org>
Mon, 7 Sep 2009 14:17:02 +0000 (16:17 +0200)
committerMichael Prokop <mika@grml.org>
Mon, 7 Sep 2009 14:17:02 +0000 (16:17 +0200)
debian/changelog
grml2usb

index 41ddbb3..5f0a5de 100644 (file)
@@ -9,8 +9,10 @@ grml2usb (0.9.10) UNRELEASED; urgency=low
     Thanks for the patch to Alexander 'Leo' Bergolth <leo@strike.wu.ac.at>!
   * Use 'pci=nomsi' in failsafe bootoption. Thanks to Marc 'HE' Brockschmidt.
   * Mention the --syslinux option if grub-install fails.
+  * Fix usage of --force in combination with --fat16. Thanks to
+    Johannes Endres and Reiko Kaps for the bugreport.
 
- -- Michael Prokop <mika@grml.org>  Mon, 07 Sep 2009 15:21:39 +0200
+ -- Michael Prokop <mika@grml.org>  Mon, 07 Sep 2009 16:16:16 +0200
 
 grml2usb (0.9.9) unstable; urgency=low
 
index c4375d7..33d574c 100755 (executable)
--- a/grml2usb
+++ b/grml2usb
@@ -1629,16 +1629,24 @@ def handle_vfat(device):
     @device: device that should checked / formated"""
 
     # make sure we have mkfs.vfat available
-    if options.fat16 and not options.force:
+    if options.fat16:
         if not which("mkfs.vfat") and not options.copyonly and not options.dryrun:
             logging.critical('Sorry, mkfs.vfat not available. Exiting.')
             logging.critical('Please make sure to install dosfstools.')
             sys.exit(1)
 
-        # make sure the user is aware of what he is doing
-        f = raw_input("Are you sure you want to format the specified partition with fat16? y/N ")
-        if f == "y" or f == "Y":
-            logging.info("Note: you can skip this question using the option --force")
+        exec_mkfs = False
+        if options.force:
+            print "Forcing mkfs.fat16 on %s as requested via option --force." % device
+            exec_mkfs = True
+        else:
+            # make sure the user is aware of what he is doing
+            f = raw_input("Are you sure you want to format the specified partition with fat16? y/N ")
+            if f == "y" or f == "Y":
+                logging.info("Note: you can skip this question using the option --force")
+                exec_mkfs = True
+
+        if exec_mkfs:
             try:
                 mkfs_fat16(device)
             except CriticalException, error: