]> granicus.if.org Git - python/commitdiff
__init__(), save_views(): Catch ValueError along with IOError and
authorBarry Warsaw <barry@python.org>
Tue, 10 Jul 2001 21:48:51 +0000 (21:48 +0000)
committerBarry Warsaw <barry@python.org>
Tue, 10 Jul 2001 21:48:51 +0000 (21:48 +0000)
EOFError so any failures in unmarshalling are just ignored.  Use
print>> instead of sys.stderr.write().

Tools/pynche/Switchboard.py

index f67a1a951d34194fd6afbf67909405ca40c94af9..0ad7c63900ea1da907966973b73944dcdfae90fd 100644 (file)
@@ -45,6 +45,8 @@ import sys
 from types import DictType
 import marshal
 
+
+\f
 class Switchboard:
     def __init__(self, initfile):
         self.__initfile = initfile
@@ -63,11 +65,10 @@ class Switchboard:
                     fp = open(initfile)
                     self.__optiondb = marshal.load(fp)
                     if type(self.__optiondb) <> DictType:
-                        sys.stderr.write(
-                            'Problem reading options from file: %s\n' %
-                            initfile)
+                        print >> sys.stderr, \
+                              'Problem reading options from file:', initfile
                         self.__optiondb = {}
-                except (IOError, EOFError):
+                except (IOError, EOFError, ValueError):
                     pass
             finally:
                 if fp:
@@ -118,8 +119,8 @@ class Switchboard:
             try:
                 fp = open(self.__initfile, 'w')
             except IOError:
-                sys.stderr.write('Cannot write options to file: %s\n' %
-                                 self.__initfile)
+                print >> sys.stderr, 'Cannot write options to file:', \
+                      self.__initfile
             else:
                 marshal.dump(self.__optiondb, fp)
         finally: