[issue12558] Locale-dependent crash for float width argument to Tkinter widget constructor

Hans Bering report at bugs.python.org
Thu Jul 14 20:55:24 CEST 2011


Hans Bering <hans.bering at arcor.de> added the comment:

Sorry for the misclassification, and thanks for correcting that.

I agree, this issue is most likely related to issue 10647; but at some level I think they must be different, because issue 10647 seems to be specific to Python 3.1 under Windows; I could not reproduce that issue neither under Ubuntu nor with Python 3.2 in Windows. This behaviour on the other hand I could reproduce with Python 2.7 and Python 3.2 in both Ubuntu and Windows. The underlying problem in both cases, I believe, is similar: That int/float arguments are somewhere turned into locale-dependent string representations and later parsed back using a potentially different locale.

Which brings me to why I consider this to be a bug - sorry for not having made that point clearer: The handling of the float argument depends on the system locale. If you change the example script to run with an English locale, you do not get an error; instead, the float is implicitly used as an int, and everything is fine. Only if you use German or a similar locale, will the float trigger an error. So the behaviour is at the very least inconsistent. If treating a float argument as an error is deemed acceptable, then this error should not be locale-dependent.

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue12558>
_______________________________________


More information about the Python-bugs-list mailing list