summaryrefslogtreecommitdiffstats
path: root/pym/portage/cache/flat_hash.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-08-21 00:06:10 +0000
committerZac Medico <zmedico@gentoo.org>2009-08-21 00:06:10 +0000
commit9fa866297d1e01e658580b410c1a1e53fccd775f (patch)
tree434213d5ae1efa1edd5055679d1c789997beceb5 /pym/portage/cache/flat_hash.py
parentb12ad1c74a820196faa930353cdd021a33cb6958 (diff)
downloadportage-9fa866297d1e01e658580b410c1a1e53fccd775f.tar.gz
portage-9fa866297d1e01e658580b410c1a1e53fccd775f.tar.bz2
portage-9fa866297d1e01e658580b410c1a1e53fccd775f.zip
Use _encodings where appropriate.
svn path=/main/trunk/; revision=14107
Diffstat (limited to 'pym/portage/cache/flat_hash.py')
-rw-r--r--pym/portage/cache/flat_hash.py19
1 files changed, 13 insertions, 6 deletions
diff --git a/pym/portage/cache/flat_hash.py b/pym/portage/cache/flat_hash.py
index 2467f6800..259be4108 100644
--- a/pym/portage/cache/flat_hash.py
+++ b/pym/portage/cache/flat_hash.py
@@ -9,6 +9,7 @@ from portage.cache import cache_errors
import errno
import stat
from portage import os
+from portage import _encodings
from portage import _unicode_encode
class database(fs_template.FsBased):
@@ -29,8 +30,10 @@ class database(fs_template.FsBased):
def _getitem(self, cpv):
fp = os.path.join(self.location, cpv)
try:
- myf = codecs.open(_unicode_encode(fp),
- mode='r', encoding='utf_8', errors='replace')
+ myf = codecs.open(_unicode_encode(fp,
+ encoding=_encodings['fs'], errors='strict'),
+ mode='r', encoding=_encodings['repo.content'],
+ errors='replace')
try:
d = self._parse_data(myf.readlines(), cpv)
if '_mtime_' not in d:
@@ -58,14 +61,18 @@ class database(fs_template.FsBased):
s = cpv.rfind("/")
fp = os.path.join(self.location,cpv[:s],".update.%i.%s" % (os.getpid(), cpv[s+1:]))
try:
- myf = codecs.open(_unicode_encode(fp), mode='w',
- encoding='utf_8', errors='replace')
+ myf = codecs.open(_unicode_encode(fp,
+ encoding=_encodings['fs'], errors='strict'),
+ mode='w', encoding=_encodings['repo.content'],
+ errors='backslashreplace')
except (IOError, OSError), e:
if errno.ENOENT == e.errno:
try:
self._ensure_dirs(cpv)
- myf = codecs.open(_unicode_encode(fp), mode='w',
- encoding='utf_8', errors='replace')
+ myf = codecs.open(_unicode_encode(fp,
+ encoding=_encodings['fs'], errors='strict'),
+ mode='w', encoding=_encodings['repo.content'],
+ errors='backslashreplace')
except (OSError, IOError),e:
raise cache_errors.CacheCorruption(cpv, e)
else: