Message109542
On narrow unicode builds:
unicodedata.category(chr(0x10000)) == 'Lo' # correct
Py_UNICODE_ISPRINTABLE(0x10000) == 1 # correct
str.isprintable(chr(0x10000)) == False # inconsistent
On narrow unicode builds, large code points are stored with a surrogate pair. But str.isprintable() simply loops over the Py_UNICODE array, and test the surrogates separately.
There should be a way to walk a unicode string in C, character by character, and the str methods (str.is*, str.to*) should use it. |
|
Date |
User |
Action |
Args |
2010-07-08 13:50:03 | amaury.forgeotdarc | set | recipients:
+ amaury.forgeotdarc, lemburg, ezio.melotti |
2010-07-08 13:50:03 | amaury.forgeotdarc | set | messageid: <1278597003.49.0.847714220976.issue9200@psf.upfronthosting.co.za> |
2010-07-08 13:50:01 | amaury.forgeotdarc | link | issue9200 messages |
2010-07-08 13:50:00 | amaury.forgeotdarc | create | |
|