Fixes for Missed 'open' statements

This commit is contained in:
Sam Manzi
2016-04-28 10:34:22 +10:00
parent 59793536ed
commit eb4b4d083f
8 changed files with 191 additions and 203 deletions

View File

@@ -1130,14 +1130,13 @@ class PluginRegister(object):
lenpd = len(self.__plugindata)
full_filename = os.path.join(dir, filename)
try:
fd = open(full_filename, "r", encoding='utf-8')
with open(full_filename, "r", encoding='utf-8') as fd:
stream = fd.read()
except Exception as msg:
print(_('ERROR: Failed reading plugin registration %(filename)s') % \
{'filename' : filename})
print(msg)
continue
stream = fd.read()
fd.close()
if os.path.exists(os.path.join(os.path.dirname(full_filename),
'locale')):
try:

View File

@@ -333,12 +333,7 @@ class ConfigManager(object):
if exp.errno != errno.EEXIST:
raise
try:
key_file = open(filename, "w", encoding="utf-8")
except IOError as err:
logging.warn("Failed to open %s because %s",
filename, str(err))
return;
with open(filename, "w", encoding="utf-8") as key_file:
key_file.write(";; Gramps key file\n")
key_file.write((";; Automatically created at %s" %
time.strftime("%Y/%m/%d %H:%M:%S")) + "\n\n")
@@ -360,8 +355,11 @@ class ConfigManager(object):
key,
repr(value)))
key_file.write("\n")
key_file.close()
# else, no filename given; nothing to save so do nothing quietly
except IOError as err:
logging.warn("Failed to open %s because %s",
filename, str(err))
return
def get(self, key):
"""

View File

@@ -218,10 +218,7 @@ class GrampletBar(Gtk.Notebook):
"""
filename = self.configfile
try:
fp = open(filename, "w", encoding='utf-8')
except IOError:
LOG.warning("Failed writing '%s'; gramplets not saved" % filename)
return
with open(filename, "w", encoding='utf-8') as fp:
fp.write(";; Gramplet bar configuration file" + NL)
fp.write((";; Automatically created at %s" %
time.strftime("%Y/%m/%d %H:%M:%S")) + NL + NL)
@@ -261,7 +258,9 @@ class GrampletBar(Gtk.Notebook):
fp.write(("page=%d" + NL) % page_num)
fp.write(NL)
fp.close()
except IOError:
LOG.warning("Failed writing '%s'; gramplets not saved" % filename)
return
def set_active(self):
"""

View File

@@ -1187,11 +1187,7 @@ class GrampletPane(Gtk.ScrolledWindow):
return # something is the matter
filename = self.configfile
try:
fp = open(filename, "w", encoding='utf-8')
except IOError as err:
LOG.warn("Failed to open %s because $s; gramplets not saved",
filename, str(err))
return
with open(filename, "w", encoding='utf-8') as fp:
fp.write(";; Gramps gramplets file\n")
fp.write(";; Automatically created at %s" %
time.strftime("%Y/%m/%d %H:%M:%S\n\n"))
@@ -1262,7 +1258,10 @@ class GrampletPane(Gtk.ScrolledWindow):
else:
fp.write("%s=%s\n\n" % (key, base_opts[key]))
fp.close()
except IOError as err:
LOG.warn("Failed to open %s because $s; gramplets not saved",
filename, str(err))
return
def drop_widget(self, source, context, x, y, timedata):
"""

View File

@@ -90,15 +90,7 @@ class GeneWebWriter(object):
self.dirname = os.path.dirname (self.filename)
try:
self.g = open(self.filename, "wb")
except IOError as msg:
msg2 = _("Could not create %s") % self.filename
self.user.notify_error(msg2, str(msg))
return False
except:
self.user.notify_error(_("Could not create %s") % self.filename)
return False
with open(self.filename, "wb") as self.g:
self.flist = [x for x in self.db.iter_family_handles()]
if len(self.flist) < 1:
self.user.notify_error(_("No families matched by selected filter"))
@@ -111,8 +103,14 @@ class GeneWebWriter(object):
self.write_family(key)
self.writeln("")
self.g.close()
return True
except IOError as msg:
msg2 = _("Could not create %s") % self.filename
self.user.notify_error(msg2, str(msg))
return False
except:
self.user.notify_error(_("Could not create %s") % self.filename)
return False
def write_family(self, family_handle):
family = self.db.get_family_from_handle(family_handle)

View File

@@ -96,15 +96,7 @@ class CalendarWriter(object):
self.dirname = os.path.dirname (filename)
try:
self.g = open(filename,"w")
except IOError as msg:
msg2 = _("Could not create %s") % filename
self.user.notify_error(msg2, str(msg))
return False
except:
self.user.notify_error(_("Could not create %s") % filename)
return False
with open(filename,"w") as self.g:
self.writeln("BEGIN:VCALENDAR")
self.writeln("PRODID:-//GNU//Gramps//EN")
self.writeln("VERSION:1.0")
@@ -122,8 +114,14 @@ class CalendarWriter(object):
self.writeln("")
self.writeln("END:VCALENDAR")
self.g.close()
return True
except IOError as msg:
msg2 = _("Could not create %s") % filename
self.user.notify_error(msg2, str(msg))
return False
except:
self.user.notify_error(_("Could not create %s") % filename)
return False
def write_family(self, family_handle):
family = self.db.get_family_from_handle(family_handle)

View File

@@ -67,10 +67,7 @@ def importData(database, filename, user):
database.__class__.__bases__
try:
ifile = open(filename, "rb")
except IOError:
return
with open(filename, "rb") as ifile:
ansel = False
gramps = False
for index in range(50):
@@ -87,7 +84,9 @@ def importData(database, filename, user):
ansel = True
if len(line) > 2 and line[1][0:4] == 'SOUR' and line[2] == "GRAMPS":
gramps = True
ifile.close()
except IOError:
return
if not gramps and ansel:
top = Glade()

View File

@@ -1129,13 +1129,11 @@ class GedcomInfoDB(object):
try:
filepath = os.path.join(DATA_DIR, "gedcom.xml")
ged_file = open(filepath, "rb")
except:
return
with open(filepath, "rb") as ged_file:
parser = GedInfoParser(self)
parser.parse(ged_file)
ged_file.close()
except:
return
def add_description(self, name, obj):
self.map[name] = obj