8541: Crash following update: addon permission issue blocks
re-starting gramps There were two issues: 1. attempting to read a new addon file that wasn't readable threw an exception, aborted updating addons 2. global error catching didn't properly handle error code from an OSError for Python3
This commit is contained in:
parent
9683a9e9eb
commit
2701d51b62
@ -1100,10 +1100,16 @@ class PluginRegister(object):
|
||||
continue
|
||||
lenpd = len(self.__plugindata)
|
||||
full_filename = os.path.join(dir, filename)
|
||||
if sys.version_info[0] < 3:
|
||||
fd = open(full_filename, "r")
|
||||
else:
|
||||
fd = io.open(full_filename, "r", encoding='utf-8')
|
||||
try:
|
||||
if sys.version_info[0] < 3:
|
||||
fd = open(full_filename, "r")
|
||||
else:
|
||||
fd = io.open(full_filename, "r", encoding='utf-8')
|
||||
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),
|
||||
|
@ -378,7 +378,7 @@ def __startgramps(errors, argparser):
|
||||
% e.code, exc_info=True)
|
||||
except OSError as e:
|
||||
quit_now = True
|
||||
exit_code = e[0] or 1
|
||||
exit_code = e.errno or 1
|
||||
try:
|
||||
fn = e.filename
|
||||
except AttributeError:
|
||||
|
Loading…
Reference in New Issue
Block a user