From c58098796a0302247c77da2fdefb6b7bd21c0624 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 23 Mar 2009 02:19:36 +0000 Subject: [PATCH] Add a temporary workaround for bug #263081 (partially reverts r12757). (trunk r13141) svn path=/main/branches/2.1.6/; revision=13158 --- pym/portage/cache/sqlite.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pym/portage/cache/sqlite.py b/pym/portage/cache/sqlite.py index aa5c30468..6588b3cc7 100644 --- a/pym/portage/cache/sqlite.py +++ b/pym/portage/cache/sqlite.py @@ -164,6 +164,18 @@ class database(fs_template.FsBased): if k not in internal_columns: d[k] = result[0][column_index] + # As a temporary workaround for bug #263081, convert unicode strings + # to raw byte strings. This helps to potential unicode errors that can + # be triggered elsewhere when attempting to join unicode strings with + # raw byte strings. TODO: Convert all string handling code to use + # unicode strings instead of raw byte strings (required for py3k + # compatibility). + for k, v in d.iteritems(): + try: + d[k] = str(v) + except UnicodeEncodeError: + pass + return d def _setitem(self, cpv, values): -- 2.26.2