From: Guido van Rossum <guido@python.org>
Date: Wed, 29 Aug 2007 03:08:55 +0000 (+0000)
Subject: Make gettext work with strict str/bytes.
X-Git-Tag: v3.0a1~159
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9600f93db6038ef6d5a1254295bac61e96fa56a2;p=python

Make gettext work with strict str/bytes.
---

diff --git a/Lib/gettext.py b/Lib/gettext.py
index d3f853829d..37ebf8a82b 100644
--- a/Lib/gettext.py
+++ b/Lib/gettext.py
@@ -292,7 +292,7 @@ class GNUTranslations(NullTranslations):
             if mlen == 0:
                 # Catalog description
                 lastk = k = None
-                for b_item in tmsg.split(os.linesep):
+                for b_item in tmsg.split(os.linesep.encode("ascii")):
                     item = str(b_item).strip()
                     if not item:
                         continue
@@ -321,8 +321,8 @@ class GNUTranslations(NullTranslations):
             # if the Unicode conversion fails.
             if b'\x00' in msg:
                 # Plural forms
-                msgid1, msgid2 = msg.split('\x00')
-                tmsg = tmsg.split('\x00')
+                msgid1, msgid2 = msg.split(b'\x00')
+                tmsg = tmsg.split(b'\x00')
                 if self._charset:
                     msgid1 = str(msgid1, self._charset)
                     tmsg = [str(x, self._charset) for x in tmsg]