diffconfig: Gracefully exit if the default config files are not present
authorMike Pagano <mpagano@gentoo.org>
Fri, 16 Aug 2013 18:40:56 +0000 (14:40 -0400)
committerMichal Marek <mmarek@suse.cz>
Mon, 19 Aug 2013 20:33:32 +0000 (22:33 +0200)
Handle gracefully the instance where config files are not present.
Compatible with python versions 2.5, 2.6 and 2.7.
The try/except is forward compatible with python version 3 once the entire script is ported.

Signed-off-by: Mike Pagano <mpagano@gentoo.org>
Signed-off-by: Michal Marek <mmarek@suse.cz>
scripts/diffconfig

index b91f3e34d44d5d39907b8bbef3de4fb6f37fbb69..0ee65839f7aa00ee931dc2c0ebf2edb665654ca4 100755 (executable)
@@ -94,8 +94,13 @@ def main():
         configa_filename = sys.argv[1]
         configb_filename = sys.argv[2]
 
-    a = readconfig(file(configa_filename))
-    b = readconfig(file(configb_filename))
+    try:
+        a = readconfig(file(configa_filename))
+        b = readconfig(file(configb_filename))
+    except (IOError):
+        e = sys.exc_info()[1]
+        print("I/O error[%s]: %s\n" % (e.args[0],e.args[1]))
+        usage()
 
     # print items in a but not b (accumulate, sort and print)
     old = []