[Python-checkins] r71948 - in python/branches/release26-maint: Lib/test/test_unicodedata.py Misc/NEWS Objects/unicodectype.c

martin.v.loewis python-checkins at python.org
Sun Apr 26 03:01:58 CEST 2009


Author: martin.v.loewis
Date: Sun Apr 26 03:01:58 2009
New Revision: 71948

Log:
Merged revisions 71947 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r71947 | martin.v.loewis | 2009-04-26 02:53:18 +0200 (So, 26 Apr 2009) | 3 lines
  
  Issue #4971: Fix titlecase for characters that are their own
  titlecase, but not their own uppercase.
........


Modified:
   python/branches/release26-maint/   (props changed)
   python/branches/release26-maint/Lib/test/test_unicodedata.py
   python/branches/release26-maint/Misc/NEWS
   python/branches/release26-maint/Objects/unicodectype.c

Modified: python/branches/release26-maint/Lib/test/test_unicodedata.py
==============================================================================
--- python/branches/release26-maint/Lib/test/test_unicodedata.py	(original)
+++ python/branches/release26-maint/Lib/test/test_unicodedata.py	Sun Apr 26 03:01:58 2009
@@ -20,7 +20,7 @@
 class UnicodeMethodsTest(unittest.TestCase):
 
     # update this, if the database changes
-    expectedchecksum = 'b7db9b5f1d804976fa921d2009cbef6f025620c1'
+    expectedchecksum = '6ec65b65835614ec00634c674bba0e50cd32c189'
 
     def test_method_checksum(self):
         h = hashlib.sha1()
@@ -270,6 +270,11 @@
             [0]
         )
 
+    def test_buf_4971(self):
+        # LETTER DZ WITH CARON: DZ, Dz, dz
+        self.assertEqual(u"\u01c4".title(), u"\u01c5")
+        self.assertEqual(u"\u01c5".title(), u"\u01c5")
+        self.assertEqual(u"\u01c6".title(), u"\u01c5")
 
 def test_main():
     test.test_support.run_unittest(

Modified: python/branches/release26-maint/Misc/NEWS
==============================================================================
--- python/branches/release26-maint/Misc/NEWS	(original)
+++ python/branches/release26-maint/Misc/NEWS	Sun Apr 26 03:01:58 2009
@@ -12,6 +12,9 @@
 Core and Builtins
 -----------------
 
+- Issue #4971: Fix titlecase for characters that are their own
+  titlecase, but not their own uppercase.
+
 - Issue #5829: complex('1e-500') no longer raises an exception
 
 - Issue #5787: object.__getattribute__(some_type, "__bases__") segfaulted on

Modified: python/branches/release26-maint/Objects/unicodectype.c
==============================================================================
--- python/branches/release26-maint/Objects/unicodectype.c	(original)
+++ python/branches/release26-maint/Objects/unicodectype.c	Sun Apr 26 03:01:58 2009
@@ -76,12 +76,7 @@
 Py_UNICODE _PyUnicode_ToTitlecase(register Py_UNICODE ch)
 {
     const _PyUnicode_TypeRecord *ctype = gettyperecord(ch);
-    int delta;
-
-    if (ctype->title)
-        delta = ctype->title;
-    else
-	delta = ctype->upper;
+    int delta = ctype->title;
 
     if (ctype->flags & NODELTA_MASK)
 	return delta;


More information about the Python-checkins mailing list