[Python-Dev] buglet in long("123\0", 10)

Neal Norwitz nnorwitz at gmail.com
Mon Jan 15 00:14:25 CET 2007


SVN rev 52305 resolved Bug #1545497: when given an explicit base,
int() did ignore NULs embedded in the string to convert.

However, the same fix wasn't applied for long().

n

On 1/13/07, Guido van Rossum <guido at python.org> wrote:
> What's wrong with this session? :-)
>
> Python 2.6a0 (trunk:53416, Jan 13 2007, 15:24:17)
> [GCC 4.0.1 (Apple Computer, Inc. build 5363)] on darwin
> Type "help", "copyright", "credits" or "license" for more information.
> >>> int('123\0')
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
> ValueError: null byte in argument for int()
> >>> int('123\0', 10)
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
> ValueError: invalid literal for int() with base 10: '123\x00'
> >>> long('123\0')
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
> ValueError: null byte in argument for long()
> >>> long('123\0', 10)
> 123L
> >>>
>
> --
> --Guido van Rossum (home page: http://www.python.org/~guido/)
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> http://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe: http://mail.python.org/mailman/options/python-dev/nnorwitz%40gmail.com
>


More information about the Python-Dev mailing list