summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-08-04 06:45:46 +0000
committerZac Medico <zmedico@gentoo.org>2009-08-04 06:45:46 +0000
commit729b7d573c13250ee981b6f957a47ce58e7bb2df (patch)
tree7a56d2521e352f6cc99de3dea6f1993ed7982dbe /pym
parent1c6aec2925776edc6694c660877dd2b7a9ac7111 (diff)
downloadportage-729b7d573c13250ee981b6f957a47ce58e7bb2df.tar.gz
portage-729b7d573c13250ee981b6f957a47ce58e7bb2df.tar.bz2
portage-729b7d573c13250ee981b6f957a47ce58e7bb2df.zip
Bug #280259 - Use codecs.open() when reading the Packages file inside
binarytree.inject(), in order to avoid a UnicodeDecodeError when the file is later written as a unicode stream (via atomic_ofstream). svn path=/main/trunk/; revision=13889
Diffstat (limited to 'pym')
-rw-r--r--pym/portage/dbapi/bintree.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py
index 41da32d39..2b4dd1834 100644
--- a/pym/portage/dbapi/bintree.py
+++ b/pym/portage/dbapi/bintree.py
@@ -21,6 +21,7 @@ from portage.localization import _
from portage import dep_expand, listdir, _check_distfile, _movefile
+import codecs
import os, errno, stat
import re
from itertools import chain, izip
@@ -847,7 +848,8 @@ class binarytree(object):
created_symlink = True
pkgindex = self._new_pkgindex()
try:
- f = open(self._pkgindex_file)
+ f = codecs.open(self._pkgindex_file,
+ encoding='utf_8', errors='replace')
except EnvironmentError:
pass
else: