uninitialized memory errors in JScriptParse_ParseScriptText ?

Jacek Caban jacek at codeweavers.com
Wed Oct 21 15:51:26 CDT 2009


Hi Dan,

Dan Kegel wrote:
> Hi Jacek!
> Please have a look at
> http://kegel.com/wine/valgrind/logs/2009-10-20-01.09/vg-jscript_run.txt
> There are a few interesting errors there.  The first one (with a
> little context from
> http://kegel.com/wine/valgrind/logs/2009-10-20-01.09.log) is:
>   

Thanks for the report!

> valgrind ... wine jscript_test.exe.so run.c
> ...
> run.c:367: Test failed: lang.js: L"2.5*3.5 !== 8.75"
>   

This one might be caused by rounding floating point numbers, I'm not sure.

> ...
>  Use of uninitialised value of size 4
>     at  get_char_typeW (unicode.h:141)
>     by  isdigitW (unicode.h:165)
>     by  String_replace (string.c:968)
>     by  invoke_prop_func (dispex.c:257)
>     by  jsdisp_call (dispex.c:868)
>     by  disp_call (dispex.c:897)
>     by  call_expression_eval (engine.c:1604)
>     by  expr_eval (engine.c:42)
>     by  assign_expression_eval (engine.c:3108)
>     by  expr_eval (engine.c:42)
>     by  expression_statement_eval (engine.c:678)
>     by  stat_eval (engine.c:37)
>     by  exec_source (engine.c:472)
>     by  exec_global_code (jscript.c:106)
>     by  JScriptParse_ParseScriptText (jscript.c:715)
>   Uninitialised value was created by a client request
>     at  mark_block_uninitialized (heap.c:187)
>     by  RtlAllocateHeap (heap.c:1429)
>     by  SysAllocStringLen (oleaut.c:233)
>     by  SysAllocString (oleaut.c:157)
>     by  to_string (jsutils.c:558)
>     by  String_replace (string.c:882)
>     by  invoke_prop_func (dispex.c:257)
>     by  jsdisp_call (dispex.c:868)
>     by  disp_call (dispex.c:897)
>     by  call_expression_eval (engine.c:1604)
>     by  expr_eval (engine.c:42)
>     by  assign_expression_eval (engine.c:3108)
>     by  expr_eval (engine.c:42)
>     by  expression_statement_eval (engine.c:678)
>     by  stat_eval (engine.c:37)
>     by  exec_source (engine.c:472)
>     by  exec_global_code (jscript.c:106)
>     by  JScriptParse_ParseScriptText (jscript.c:715)
>
> Removing the common bits, the core of that warning is
>
>  Use of uninitialised value of size 4
>     at  get_char_typeW (unicode.h:141)
>     by  isdigitW (unicode.h:165)
>     by  String_replace (string.c:968)
>   Uninitialised value was created by a client request
>     at  mark_block_uninitialized (heap.c:187)
>     by  RtlAllocateHeap (heap.c:1429)
>     by  SysAllocStringLen (oleaut.c:233)
>     by  SysAllocString (oleaut.c:157)
>     by  to_string (jsutils.c:558)
>     by  String_replace (string.c:882)
>   

I've sent a patch to fix this one.


Thanks,
    Jacek



More information about the wine-devel mailing list