Gentoo Archives: gentoo-commits

From: "Zac Medico (zmedico)" <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] portage r13907 - main/trunk/pym/portage/dbapi
Date: Tue, 04 Aug 2009 21:12:26
Message-Id: E1MYRJ1-000443-9M@stork.gentoo.org
1 Author: zmedico
2 Date: 2009-08-04 21:12:22 +0000 (Tue, 04 Aug 2009)
3 New Revision: 13907
4
5 Modified:
6 main/trunk/pym/portage/dbapi/vartree.py
7 Log:
8 Always return unicode from vardbapi.aux_get().
9
10
11 Modified: main/trunk/pym/portage/dbapi/vartree.py
12 ===================================================================
13 --- main/trunk/pym/portage/dbapi/vartree.py 2009-08-04 20:00:20 UTC (rev 13906)
14 +++ main/trunk/pym/portage/dbapi/vartree.py 2009-08-04 21:12:22 UTC (rev 13907)
15 @@ -1173,6 +1173,12 @@
16 cache_mtime, metadata = pkg_data
17 cache_valid = cache_mtime == mydir_mtime
18 if cache_valid:
19 + for k, v in metadata.iteritems():
20 + if not isinstance(v, unicode):
21 + # Migrate old metadata to unicode.
22 + metadata[k] = unicode(v,
23 + encoding='utf_8', errors='replace')
24 +
25 mydata.update(metadata)
26 pull_me.difference_update(mydata)
27
28 @@ -1193,7 +1199,7 @@
29 if not mydata['SLOT']:
30 # Empty slot triggers InvalidAtom exceptions when generating slot
31 # atoms for packages, so translate it to '0' here.
32 - mydata['SLOT'] = '0'
33 + mydata['SLOT'] = u'0'
34 return [mydata[x] for x in wants]
35
36 def _aux_get(self, mycpv, wants, st=None):
37 @@ -1216,7 +1222,8 @@
38 results.append(long(st.st_mtime))
39 continue
40 try:
41 - myf = open(os.path.join(mydir, x), "r")
42 + myf = codecs.open(os.path.join(mydir, x),
43 + mode='r', encoding='utf_8', errors='replace')
44 try:
45 myd = myf.read()
46 finally: