summaryrefslogtreecommitdiff
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
parentFix a regression caused by the code from bug #278729, which causes incorrect (diff)
downloadportage-multirepo-729b7d573c13250ee981b6f957a47ce58e7bb2df.tar.gz
portage-multirepo-729b7d573c13250ee981b6f957a47ce58e7bb2df.tar.bz2
portage-multirepo-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
-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 41da32d3..2b4dd183 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: