comctl32: rebar[1/4]: rewrite the layouting code

Alexandre Julliard julliard at winehq.org
Mon Feb 19 06:30:24 CST 2007


Mikołaj Zalewski <mikolaj at zalewski.pl> writes:

> From 2b42e9b97b443ced2531a445b531fddc5db2dcad Mon Sep 17 00:00:00 2001
> From: =?utf-8?q?Miko=C5=82aj_Zalewski?= <mikolaj at zalewski.pl>
> Date: Sat, 17 Feb 2007 19:24:25 +0100
> Subject: [PATCH] comctl32: rebar: rewrite the layouting code

This crashes in make test:

../../../tools/runtest -q -P wine -M comctl32.dll -T ../../.. -p comctl32_test.exe.so rebar.c && touch rebar.ok
wine: Unhandled page fault on read access to 0xffff001a at address 0x601bb75b (thread 0024), starting debugger...
WineDbg starting on pid 0023
Unhandled exception: page fault on read access to 0xffff001a in 32-bit code (0x601bb75b).
err:dbghelp:elf_load_debug_info_from_map Bad CRC for module  (got 1ef14dcf while expecting 31f52e76)
Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
 EIP:601bb75b ESP:0033e50c EBP:0033e548 EFLAGS:00010202(   - 00      - -RI1)
 EAX:ffff001a EBX:7b8aa9a0 ECX:00000002 EDX:00000000
 ESI:00000000 EDI:ffffffff
Stack dump:
0x0033e50c:  7b85b545 ffff001a 00000000 606a0081
0x0033e51c:  605b4fbc 0015df30 00000006 0033e548
0x0033e52c:  6055ddc0 00000040 0000000c 00000006
0x0033e53c:  605e9244 0015e0fc 0033f560 0033e578
0x0033e54c:  6055de30 00000000 00000000 ffff001a
0x0033e55c:  ffffffff 00000000 00000000 0033e578
Backtrace:
=>1 0x601bb75b strlen+0xb() in libc.so.6 (0x0033e548)
  2 0x6055de30 Str_SetPtrAtoW+0x60(lppDest=0x15e10c, lpSrc=0xffff001a) [/home/julliard/wine/wine/dlls/comctl32/comctl32undoc.c:949] in comctl32 (0x0033e578)
  3 0x605c06ef TOOLBAR_AddButtonsT+0x14f(hwnd=0x4002c, wParam=0x6, lParam=0x33f53c, fUnicode=0x0) [/home/julliard/wine/wine/dlls/comctl32/toolbar.c:2880] in comctl32 (0x0033e5c8)
  4 0x605c2842 ToolbarWindowProc+0x1b52(hwnd=0x4002c, uMsg=<register EDI not in topmost frame>, wParam=0x6, lParam=0x33f53c) [/home/julliard/wine/wine/dlls/comctl32/toolbar.c:6622] in comctl32 (0x0033ee58)
  5 0x606bb40a WINPROC_wrapper+0x1a() in user32 (0x0033ee88)
  6 0x606bbb6b call_window_proc+0x6b(hwnd=<register EDI not in topmost frame>, msg=0x414, wp=0x6, lp=0x33f53c, result=0x33f3b8, arg=0x605c0cf0) [/home/julliard/wine/wine/dlls/user32/winproc.c:452] in user32 (0x0033eec8)
  7 0x606beae7 WINPROC_CallProcAtoW+0x2c7(callback=0x606bbb00, hwnd=0x4002c, msg=0x414, wParam=0x6, lParam=0x33f53c, result=0x33f3b8, arg=0x605c0cf0) [/home/julliard/wine/wine/dlls/user32/winproc.c:903] in user32 (0x0033f388)
  8 0x606bf923 CallWindowProcA+0xc3(func=0xffff0014, hwnd=0x4002c, msg=<register EDI not in topmost frame>, wParam=<register ESI not in topmost frame>, lParam=0x33f53c) [/home/julliard/wine/wine/dlls/user32/winproc.c:2229] in user32 (0x0033f3c8)
  9 0x60688023 call_window_proc+0xe3(hwnd=<register ESI not in topmost frame>, msg=0x414, wparam=0x6, lparam=0x33f53c, unicode=0x0, same_thread=0x1) [/home/julliard/wine/wine/dlls/user32/message.c:1547] in user32 (0x0033f438)
  10 0x6068bba1 SendMessageTimeoutA+0x201(hwnd=<register ESI not in topmost frame>, msg=0x414, wparam=0x6, lparam=0x33f53c, flags=0x0, timeout=0x0, res_ptr=0x33f4e0) [/home/julliard/wine/wine/dlls/user32/message.c:2457] in user32 (0x0033f4a8)
  11 0x6068bc5c SendMessageA+0x4c(hwnd=0x4002c, msg=0x414, wparam=0x6, lparam=0x33f53c) [/home/julliard/wine/wine/dlls/user32/message.c:2496] in user32 (0x0033f4e8)
  12 0x60507938 build_toolbar+0x2c8(nr=0x1, hParent=<is not available>) [/home/julliard/wine/wine/dlls/comctl32/tests/rebar.c:79] in comctl32_test (0x0033f5e8)
  13 0x60508011 add_band_w+0x71(hRebar=<register EDI not in topmost frame>, lpszText=<is not available>, cxMinChild=<register ESI not in topmost frame>, cx=0x28, cxIdeal=0x64) [/home/julliard/wine/wine/dlls/comctl32/tests/rebar.c:288] in comctl32_test (0x0033f778)
  14 0x6050c205 func_rebar+0x4175() [/home/julliard/wine/wine/dlls/comctl32/tests/rebar.c:358] in comctl32_test (0x0033fe58)
  15 0x60525f20 run_test+0x120(name=0x1103a1) [/home/julliard/wine/wine/dlls/comctl32/tests/../../../include/wine/test.h:389] in comctl32_test (0x0033fea8)
  16 0x605265a1 main+0x141(argc=<register ECX not in topmost frame>, argv=<register ECX not in topmost frame>) [/home/julliard/wine/wine/dlls/comctl32/tests/../../../include/wine/test.h:437] in comctl32_test (0x0033fed8)
  17 0x6052666b __wine_spec_exe_entry+0x5b(peb=0x7ffdf000) [/home/julliard/wine/wine/dlls/winecrt0/exe_entry.c:36] in comctl32_test (0x0033ff08)
  18 0x7b86fbeb start_process+0xeb() in kernel32 (0x0033ffe8)
  19 0x6001f7a7 wine_switch_to_stack+0x17() in libwine.so.1 (0x00000000)
0x601bb75b strlen+0xb in libc.so.6: cmpb	%ch,0x0(%eax)
Wine-dbg>

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list