diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-08-21 00:06:10 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-08-21 00:06:10 +0000 |
commit | 9fa866297d1e01e658580b410c1a1e53fccd775f (patch) | |
tree | 434213d5ae1efa1edd5055679d1c789997beceb5 /pym/portage/cache/flat_hash.py | |
parent | b12ad1c74a820196faa930353cdd021a33cb6958 (diff) | |
download | portage-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.py | 19 |
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: |