fix the parted-version selection code, f14 has parted.version broken
authorThierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Wed, 5 Jan 2011 16:43:51 +0000 (17:43 +0100)
committerS.Çağlar Onur <caglar@verivue.com>
Tue, 15 Mar 2011 15:49:34 +0000 (11:49 -0400)
source/steps/InstallPartitionDisks.py

index 81d100d..7a31eea 100644 (file)
@@ -183,13 +183,20 @@ def single_partition_device( device, vars, log ):
     """
 
     # two forms, depending on which version of pyparted we have
+    # v1 does not have a 'version' method
+    # v2 and above does, but to make it worse, 
+    # parted-3.4 on f14 has parted.version broken and raises SystemError
     try:
-        version=parted.version()
+        parted.version()
         return single_partition_device_2_x (device, vars, log)
-    except:
+    except AttributeError:
+        # old parted does not have version at all
         return single_partition_device_1_x (device, vars, log)
-
-        
+    except SystemError:
+        # let's assume this is >=2
+        return single_partition_device_2_x (device, vars, log)
+    except:
+        raise
 
 def single_partition_device_1_x ( device, vars, log):