http://bugs.winehq.org/show_bug.cgi?id=30860
Bug #: 30860 Summary: HeapValidate() reports incorrect results when running under Valgrind Product: Wine Version: 1.5.5 Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: ntdll AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com Classification: Unclassified
When run under Valgrind, the program
#include <windows.h> #include <assert.h> int WINAPI WinMain(HINSTANCE hinst, HINSTANCE hinstPrev, LPSTR lpCmdLine, int nShowCmd) { assert(HeapValidate(GetProcessHeap(), 0, 0)); }
fails the assertion, and the log shows
err:heap:HEAP_ValidateInUseArena Heap 0x7f000000: free block 0x7f000138 overwritten at 0x7f000138 by 0074006e
I think heap_set_debug_flags(), HEAP_ValidateInUseArena(), and probably others would need changes for this to work.
http://bugs.winehq.org/show_bug.cgi?id=30860
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source, testcase
http://bugs.winehq.org/show_bug.cgi?id=30860
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
--- Comment #1 from Austin English austinenglish@gmail.com 2012-09-26 13:27:24 CDT --- Still in wine-1.5.13-346-g0445393 / valgrind 3.8.1.
https://bugs.winehq.org/show_bug.cgi?id=30860
--- Comment #2 from Austin English austinenglish@gmail.com --- valgrind wine c.exe.so preloader: Warning: failed to reserve range 00110000-68000000 preloader: Warning: failed to reserve range 7f000000-82000000 ==10476== Invalid read of size 4 ==10476== at 0x7BC4DBE5: HEAP_ValidateInUseArena (heap.c:1284) ==10476== by 0x7BC4DEFF: HEAP_IsRealArena (heap.c:1374) ==10476== by 0x7BC52880: RtlValidateHeap (heap.c:2071) ==10476== by 0x7B844128: HeapValidate (heap.c:199) ==10476== by 0x4AA4714: WinMain (in /home/austin/c/c.exe.so) ==10476== by 0x4AA4523: main (exe_main.c:49) ==10476== Address 0x4b60138 is 0 bytes inside a block of size 20 free'd ==10476== at 0x7BC4FD91: RtlFreeHeap (heap.c:263) ==10476== by 0x7BC59E27: load_builtin_callback (loader.c:1520) ==10476== by 0x403B57D: wine_dll_set_callback (loader.c:548) ==10476== by 0x7BC5A5C4: __wine_process_init (loader.c:3086) ==10476== by 0x403BD77: wine_init (loader.c:952) ==10476== by 0x7BF00D4B: main (main.c:237) ==10476== { <insert_a_suppression_name_here> Memcheck:Addr4 fun:HEAP_ValidateInUseArena fun:HEAP_IsRealArena fun:RtlValidateHeap fun:HeapValidate fun:WinMain fun:main } err:heap:HEAP_ValidateInUseArena Heap 0x4b60000: free block 0x4b60138 overwritten at 0x4b60138 by 0074006e ==10476== Invalid read of size 4 ==10476== at 0x7BC4DC1F: HEAP_ValidateInUseArena (heap.c:1288) ==10476== by 0x7BC4DEFF: HEAP_IsRealArena (heap.c:1374) ==10476== by 0x7BC52880: RtlValidateHeap (heap.c:2071) ==10476== by 0x7B844128: HeapValidate (heap.c:199) ==10476== by 0x4AA4714: WinMain (in /home/austin/c/c.exe.so) ==10476== by 0x4AA4523: main (exe_main.c:49) ==10476== Address 0x4b60138 is 0 bytes inside a block of size 20 free'd ==10476== at 0x7BC4FD91: RtlFreeHeap (heap.c:263) ==10476== by 0x7BC59E27: load_builtin_callback (loader.c:1520) ==10476== by 0x403B57D: wine_dll_set_callback (loader.c:548) ==10476== by 0x7BC5A5C4: __wine_process_init (loader.c:3086) ==10476== by 0x403BD77: wine_init (loader.c:952) ==10476== by 0x7BF00D4B: main (main.c:237) ==10476== { <insert_a_suppression_name_here> Memcheck:Addr4 fun:HEAP_ValidateInUseArena fun:HEAP_IsRealArena fun:RtlValidateHeap fun:HeapValidate fun:WinMain fun:main } Assertion failed: HeapValidate(GetProcessHeap(), 0, 0), file a.c, line 7
still in wine-1.7.17-42-g24c5728
https://bugs.winehq.org/show_bug.cgi?id=30860
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |valgrind
https://bugs.winehq.org/show_bug.cgi?id=30860
Thomas Faller tfaller1@gmx.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |tfaller1@gmx.de
--- Comment #3 from Thomas Faller tfaller1@gmx.de --- I can't reproduce this bug with wine 1.9.0. Can someone confirm this please?
https://bugs.winehq.org/show_bug.cgi?id=30860
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |austinenglish@gmail.com