[New-bugs-announce] [issue9242] unicodeobject.c: use of uninitialized values

Stefan Krah report at bugs.python.org
Tue Jul 13 11:24:48 CEST 2010


New submission from Stefan Krah <stefan-usenet at bytereef.org>:

Not sure if this is valid or if there is some internal trickery that Valgrind isn't aware of. If it's the latter, perhaps an entry to
Misc/valgrind.supp could be added.


test_bug1175396 (__main__.UTF32Test) ... ==26861== Conditional jump or move depends on uninitialised value(s)
==26861==    at 0x48A2DD: PyUnicodeUCS2_DecodeUTF32Stateful (unicodeobject.c:2282)
==26861==    by 0x50E25C: utf_32_le_decode (_codecsmodule.c:420)
==26861==    by 0x52E727: PyCFunction_Call (methodobject.c:81)
==26861==    by 0x4B4EB7: call_function (ceval.c:4012)
==26861==    by 0x4B1402: PyEval_EvalFrameEx (ceval.c:2665)
==26861==    by 0x4B31DA: PyEval_EvalCodeEx (ceval.c:3252)
==26861==    by 0x4B52C0: fast_function (ceval.c:4108)
==26861==    by 0x4B4FE1: call_function (ceval.c:4033)
==26861==    by 0x4B1402: PyEval_EvalFrameEx (ceval.c:2665)
==26861==    by 0x4B31DA: PyEval_EvalCodeEx (ceval.c:3252)
==26861==    by 0x4B52C0: fast_function (ceval.c:4108)
==26861==    by 0x4B4FE1: call_function (ceval.c:4033)
==26861== 
==26861== 
==26861== ---- Attach to debugger ? --- [Return/N/n/Y/y/C/c] ---- y
==26861== starting debugger with cmd: /usr/bin/gdb -nw /proc/26862/fd/1014 26862
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
Attaching to program: /proc/26862/fd/1014, process 26862
0x000000000048a2dd in PyUnicodeUCS2_DecodeUTF32Stateful (s=0x5bd6a54 "\n", size=1, errors=0x5add144 "strict", byteorder=0x7feffb18c, 
    consumed=0x7feffb170) at Objects/unicodeobject.c:2282
2282            if (qq[iorder[2]] != 0 || qq[iorder[3]] != 0)
(gdb) p s
$1 = 0x5bd6a54 "\n"
(gdb) p qq
$2 = (const unsigned char *) 0x5bd6a54 "\n"
(gdb) p iorder[2]
$3 = 2
(gdb) p iorder[3]
$4 = 3
(gdb) p bo
$5 = -1
(gdb) p *byteorder
$6 = -1

----------
messages: 110165
nosy: lemburg, skrah
priority: normal
severity: normal
status: open
title: unicodeobject.c: use of uninitialized values
type: behavior
versions: Python 2.7

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


More information about the New-bugs-announce mailing list