7258: transcode os.path.join args from the fs enc to prevent a crash
This commit is contained in:
parent
0218adae42
commit
b240c31631
@ -184,7 +184,7 @@ class RecentFiles(object):
|
|||||||
"""
|
"""
|
||||||
Saves the current GRAMPS RecentFiles collection to the associated file.
|
Saves the current GRAMPS RecentFiles collection to the associated file.
|
||||||
"""
|
"""
|
||||||
with open(os.path.expanduser(GRAMPS_FILENAME), 'w') as xml_file:
|
with open(os.path.expanduser(GRAMPS_FILENAME), 'w', encoding='utf8') as xml_file:
|
||||||
if use_lock:
|
if use_lock:
|
||||||
fcntl.lockf(xml_file,fcntl.LOCK_EX)
|
fcntl.lockf(xml_file,fcntl.LOCK_EX)
|
||||||
xml_file.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n")
|
xml_file.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n")
|
||||||
@ -222,7 +222,7 @@ class RecentParser(object):
|
|||||||
try:
|
try:
|
||||||
# Python3's expat wants bytes, Python2's wants a string.
|
# Python3's expat wants bytes, Python2's wants a string.
|
||||||
fmode = "r" if sys.version_info[0] < 3 else "rb"
|
fmode = "r" if sys.version_info[0] < 3 else "rb"
|
||||||
with open(fname, fmode) as xml_file:
|
with io.open(fname, fmode) as xml_file:
|
||||||
if use_lock:
|
if use_lock:
|
||||||
fcntl.lockf(xml_file,fcntl.LOCK_SH)
|
fcntl.lockf(xml_file,fcntl.LOCK_SH)
|
||||||
|
|
||||||
|
@ -32,6 +32,7 @@ from __future__ import unicode_literals
|
|||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
import io
|
||||||
|
|
||||||
##import logging
|
##import logging
|
||||||
##_LOG = logging.getLogger(".GrampsAboutDialog")
|
##_LOG = logging.getLogger(".GrampsAboutDialog")
|
||||||
@ -229,7 +230,7 @@ def _get_authors():
|
|||||||
parser = make_parser()
|
parser = make_parser()
|
||||||
parser.setContentHandler(AuthorParser(authors, contributors))
|
parser.setContentHandler(AuthorParser(authors, contributors))
|
||||||
|
|
||||||
authors_file = open(AUTHORS_FILE)
|
authors_file = io.open(AUTHORS_FILE, encoding="utf-8")
|
||||||
parser.parse(authors_file)
|
parser.parse(authors_file)
|
||||||
authors_file.close()
|
authors_file.close()
|
||||||
|
|
||||||
|
2
setup.py
2
setup.py
@ -214,7 +214,7 @@ def merge(in_file, out_file, option, po_dir='po', cache=True):
|
|||||||
|
|
||||||
if (not os.path.exists(out_file) and os.path.exists(in_file)):
|
if (not os.path.exists(out_file) and os.path.exists(in_file)):
|
||||||
if sys.platform == 'win32':
|
if sys.platform == 'win32':
|
||||||
cmd = (('set LC_ALL=C && intltool-merge %(opt)s %(po_dir)s %(in_file)s '
|
cmd = (('set LC_ALL=C && perl -S intltool-merge %(opt)s %(po_dir)s %(in_file)s '
|
||||||
'%(out_file)s') %
|
'%(out_file)s') %
|
||||||
{'opt' : option,
|
{'opt' : option,
|
||||||
'po_dir' : po_dir,
|
'po_dir' : po_dir,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user