This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author serhiy.storchaka
Recipients gpolo, kbk, loewis, roger.serwy, serhiy.storchaka, terry.reedy
Date 2014-01-23.15:15:00
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1390490102.86.0.0317755498486.issue20368@psf.upfronthosting.co.za>
In-reply-to
Content
Tcl/Tk uses modified UTF-8 encoding to represent strings as C strings (char*). Because C strings are NUL-terminated, the null character represented as illegal UTF-8 sequence \xc0\x80.

Current Tkinter code is not very aware about this. It has special handling the "\xc0\x80" string (i.e. encoded single null character) in one place, but doesn't handle encoded null character contained in larger string. As result Tkinter may truncate strings contained the null character, or return wrong result.

The proposed patch fixes many issues with the null character (converting from Tcl to Python strings). NUL is still forbidden in string arguments of many methods.

Also the patch enhances error handling for variable-related commands.
History
Date User Action Args
2014-01-23 15:15:03serhiy.storchakasetrecipients: + serhiy.storchaka, loewis, terry.reedy, kbk, gpolo, roger.serwy
2014-01-23 15:15:02serhiy.storchakasetmessageid: <1390490102.86.0.0317755498486.issue20368@psf.upfronthosting.co.za>
2014-01-23 15:15:02serhiy.storchakalinkissue20368 messages
2014-01-23 15:15:02serhiy.storchakacreate