7258: transcode os.path.join args from the fs enc to prevent a crash

This commit is contained in:
Josip 2014-04-04 21:47:39 +02:00
parent 0218adae42
commit b240c31631
3 changed files with 5 additions and 4 deletions

View File

@ -184,7 +184,7 @@ class RecentFiles(object):
"""
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:
fcntl.lockf(xml_file,fcntl.LOCK_EX)
xml_file.write("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n")
@ -222,7 +222,7 @@ class RecentParser(object):
try:
# Python3's expat wants bytes, Python2's wants a string.
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:
fcntl.lockf(xml_file,fcntl.LOCK_SH)

View File

@ -32,6 +32,7 @@ from __future__ import unicode_literals
import os
import sys
import io
##import logging
##_LOG = logging.getLogger(".GrampsAboutDialog")
@ -229,7 +230,7 @@ def _get_authors():
parser = make_parser()
parser.setContentHandler(AuthorParser(authors, contributors))
authors_file = open(AUTHORS_FILE)
authors_file = io.open(AUTHORS_FILE, encoding="utf-8")
parser.parse(authors_file)
authors_file.close()

View File

@ -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 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') %
{'opt' : option,
'po_dir' : po_dir,