Issue3479
Created on 2008-07-31 14:53 by schmir, last changed 2022-04-11 14:56 by admin. This issue is now closed.
| Messages (3) | |||
|---|---|---|---|
| msg70513 - (view) | Author: Ralf Schmitt (schmir) | Date: 2008-07-31 14:53 | |
unichr(2**32) results in a unicode string containing a 0 byte:
{{{
~/mwlib.hg/tests/ python
Python 2.5.2 (r252:60911, Apr 21 2008, 11:17:30)
[GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> unichr(2**32)
u'\x00'
>>> unichr(2**32+1)
u'\x01'
>>> unichr(2**32+2)
u'\x02'
}}}
2.6 shows the same behaviour.
|
|||
| msg70519 - (view) | Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) * ![]() |
Date: 2008-07-31 15:20 | |
Confirmed. This happens on architectures where sizeof(long) > sizeof(int): builtin_unichr() converts its argument to a long, but calls PyUnicode_FromOrdinal() which accepts an int. |
|||
| msg70531 - (view) | Author: Amaury Forgeot d'Arc (amaury.forgeotdarc) * ![]() |
Date: 2008-07-31 21:30 | |
Committed r65339. Will not backport to 2.5: code that used to (approximately) work would break. Thanks for the report! |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:56:37 | admin | set | github: 47729 |
| 2008-07-31 21:30:37 | amaury.forgeotdarc | set | status: open -> closed resolution: fixed messages: + msg70531 |
| 2008-07-31 15:20:51 | amaury.forgeotdarc | set | assignee: amaury.forgeotdarc messages: + msg70519 nosy: + amaury.forgeotdarc |
| 2008-07-31 14:53:44 | schmir | create | |
