Antoine Pitrou [Thu, 15 Dec 2011 13:17:36 +0000 (14:17 +0100)]
Fix the fix for issue #12149: it was incorrect, although it had the side
effect of appearing to resolve the issue. Thanks to Mark Shannon for
noticing.
Antoine Pitrou [Thu, 15 Dec 2011 13:15:31 +0000 (14:15 +0100)]
Fix the fix for issue #12149: it was incorrect, although it had the side
effect of appearing to resolve the issue. Thanks to Mark Shannon for
noticing.
Ned Deily [Wed, 14 Dec 2011 23:03:31 +0000 (15:03 -0800)]
Issue #4625: If IDLE cannot write to its recent file or breakpoint
files, display a message popup and continue rather than crash.
(original patch by Roger Serwy)
Ned Deily [Wed, 14 Dec 2011 22:58:24 +0000 (14:58 -0800)]
Issue #4625: If IDLE cannot write to its recent file or breakpoint
files, display a message popup and continue rather than crash.
(original patch by Roger Serwy)
Victor Stinner [Sun, 11 Dec 2011 23:01:39 +0000 (00:01 +0100)]
Rewrite PyUnicode_Append(); unicode_modifiable() is more strict
* Rename unicode_resizable() to unicode_modifiable()
* Rename _PyUnicode_Dirty() to unicode_check_modifiable() to make it clear
that the function is private
* Inline PyUnicode_Concat() and unicode_append_inplace() in PyUnicode_Append()
to simplify the code
* unicode_modifiable() return 0 if the hash has been computed or if the string
is not an exact unicode string
* Remove _PyUnicode_DIRTY(): no need to reset the hash anymore, because if the
hash has already been computed, you cannot modify a string inplace anymore
* PyUnicode_Concat() checks for integer overflow
Victor Stinner [Sun, 11 Dec 2011 20:53:09 +0000 (21:53 +0100)]
Call directly PyUnicode_DecodeUTF8Stateful() instead of PyUnicode_DecodeUTF8()
* Remove micro-optimization from PyUnicode_FromStringAndSize():
PyUnicode_DecodeUTF8Stateful() has already these optimizations (for size=0
and one ascii char).
* Rename utf8_max_char_size_and_char_count() to utf8_scanner(), and remove an
useless variable
Victor Stinner [Fri, 9 Dec 2011 10:29:44 +0000 (11:29 +0100)]
Issue #13441: Enable the workaround for Solaris locale bug
Skip locales triggering the mbstowcs() bug. I collected the locale list thanks
my previous commit:
* hu_HU (ISO8859-2): character U+30000020
* de_AT (ISO8859-1): character U+30000076
* cs_CZ (ISO8859-2): character U+30000020
* sk_SK (ISO8859-2): character U+30000020
* pl_PL (ISO8859-2): character U+30000020
* fr_CA (ISO8859-1): character U+30000020
Victor Stinner [Fri, 9 Dec 2011 09:28:45 +0000 (10:28 +0100)]
Issue #13441: Skip some locales (e.g. cs_CZ and hu_HU) on Solaris to workaround
a mbstowcs() bug. For example, on Solaris, the hu_HU locale uses the locale
encoding ISO-8859-2, the thousauds separator is b'\xA0' and it is decoded as
U+30000020 (an invalid character) by mbstowcs().
The workaround is not enabled yet (commented): I would like first to get
more information about the failing locales.
Victor Stinner [Fri, 9 Dec 2011 00:20:03 +0000 (01:20 +0100)]
Issue #13441: Don't test the hu_HU locale on Solaris to workaround a mbstowcs()
bug. On Solaris, if the locale is hu_HU (and if the locale encoding is not
UTF-8), the thousauds separator is b'\xA0' which is decoded as U+30000020
instead of U+0020 by mbstowcs().
Victor Stinner [Wed, 7 Dec 2011 23:33:14 +0000 (00:33 +0100)]
(Merge 3.2) Issue #11886: workaround an OS bug (time zone data) in test_time
Australian Eastern Standard Time (UTC+10) is called "EST" (as Eastern Standard
Time, UTC-5) instead of "AEST" on some operating systems (e.g. FreeBSD), which
is wrong. See for example this bug:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=93810
Victor Stinner [Wed, 7 Dec 2011 23:32:51 +0000 (00:32 +0100)]
Issue #11886: workaround an OS bug (time zone data) in test_time
Australian Eastern Standard Time (UTC+10) is called "EST" (as Eastern Standard
Time, UTC-5) instead of "AEST" on some operating systems (e.g. FreeBSD), which
is wrong. See for example this bug:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=93810