[prev in list] [next in list] [prev in thread] [next in thread]
List: wine-devel
Subject: Re: (resend)[1/2]usp10: cache OUTLINETEXTMETRICW instead of just TEXTMETRICW
From: Alexandre Julliard <julliard () winehq ! org>
Date: 2012-07-30 16:35:31
Message-ID: 877gtl6wbw.fsf () wine ! dyndns ! org
[Download RAW message or body]
Aric Stewart <aric@codeweavers.com> writes:
> ---
> dlls/usp10/usp10.c | 28 +++++++++++++++++-----------
> dlls/usp10/usp10_internal.h | 2 +-
> 2 files changed, 18 insertions(+), 12 deletions(-)
It doesn't work here:
../../../tools/runtest -q -P wine -M comctl32.dll -T ../../.. -p comctl32_test.exe.so \
ipaddress.c && touch ipaddress.ok
wine: Unhandled page fault on read access to 0x0000005c at address 0x555aef2c (thread \
002c), starting debugger... Unhandled exception: page fault on read access to \
0x0000005c in 32-bit code (0x555aef2c). Register dump:
CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
EIP:555aef2c ESP:0032efa0 EBP:0032efe8 EFLAGS:00010206( R- -- I - -P- )
EAX:00131190 EBX:555c0bb4 ECX:00131190 EDX:00000000
ESI:00131140 EDI:00000000
Stack dump:
0x0032efa0: 00110000 00000000 00000008 686def04
0x0032efb0: 6872a969 687735a8 0032f078 00000001
0x0032efc0: 00000000 0000007c 027f0c7f 687735a8
0x0032efd0: 00130ed8 00000000 555aee8b 687735a8
0x0032efe0: 00130ed8 00000000 0032f008 686d2fd9
0x0032eff0: 00131140 00000000 00000000 687735a8
Backtrace:
=>0 0x555aef2c ScriptString_pSize+0xac(ssa=0x131140) \
[/home/julliard/wine/wine/dlls/usp10/usp10.c:3496] in usp10 (0x0032efe8) 1 \
0x686d2fd9 EDIT_CalcLineWidth_SL+0x38(es=0x130ed8) \
[/home/julliard/wine/wine/dlls/user32/edit.c:821] in user32 (0x0032f008) 2 \
0x686d787f EDIT_EM_ReplaceSel+0x79e(es=<internal error>, can_undo=0, \
lpsz_replace="1", send_update=0, honor_limit=0) \
[/home/julliard/wine/wine/dlls/user32/edit.c:2655] in user32 (0x0032f098) 3 \
0x686db93c EditWndProc_common+0x256b(hwnd=0x50026, msg=0xc, wParam=0, \
lParam=0x32f5c4, unicode=0x1) [/home/julliard/wine/wine/dlls/user32/edit.c:3876] in \
user32 (0x0032f128) 4 0x6873b60b EditWndProcW+0x3a(hwnd=0x50026, msg=0xc, wParam=0, \
lParam=0x32f5c4) [/home/julliard/wine/wine/dlls/user32/winproc.c:1081] in user32 \
(0x0032f158) 5 0x6873b42a WINPROC_wrapper+0x19() in user32 (0x0032f188)
6 0x6873bb7c call_window_proc+0x5b(hwnd=0x50026, msg=0xc, wp=0, lp=0x32f5c4, \
result=0x32f20c, arg=0x6873b5d0) [/home/julliard/wine/wine/dlls/user32/winproc.c:242] \
in user32 (0x0032f1d8) 7 0x6873e5ad CallWindowProcW+0x5c(func=0x6873b5d0, \
hwnd=0x50026, msg=0xc, wParam=0, lParam=0x32f5c4) \
[/home/julliard/wine/wine/dlls/user32/winproc.c:980] in user32 (0x0032f228) \
fixme:dbghelp_dwarf:compute_location Only supporting one breg (edi/24 -> esi/23) 8 \
0x685c1cf5 IPADDRESS_SubclassProc+0xc4(hwnd=0x50026, uMsg=0xc, wParam=0, \
lParam=0x32f5c4) [/home/julliard/wine/wine/dlls/comctl32/ipaddress.c:555] in comctl32 \
(0x0032f2a8) 9 0x6873b42a WINPROC_wrapper+0x19() in user32 (0x0032f2d8)
10 0x6873bb7c call_window_proc+0x5b(hwnd=0x50026, msg=0xc, wp=0, lp=0x32f5c4, \
result=0x32f3a8, arg=0x685c1c30) [/home/julliard/wine/wine/dlls/user32/winproc.c:242] \
in user32 (0x0032f328) 11 0x6873e328 WINPROC_call_window+0x107(hwnd=0x50026, \
msg=0xc, wParam=0, lParam=0x32f5c4, result=0x32f3a8, unicode=0x1, mapping=1750868266) \
[/home/julliard/wine/wine/dlls/user32/winproc.c:908] in user32 (0x0032f378) 12 \
0x686fe88d call_window_proc+0x8c(hwnd=0x50026, msg=0xc, wparam=0, lparam=0x32f5c4, \
unicode=0x1, same_thread=0x1, mapping=1750868266) \
[/home/julliard/wine/wine/dlls/user32/message.c:2211] in user32 (0x0032f3d8) 13 \
0x6870557e send_message+0x20d(info=0x32f464, res_ptr=0x32f460, unicode=0x1) \
[/home/julliard/wine/wine/dlls/user32/message.c:3084] in user32 (0x0032f448) 14 \
0x687059ec SendMessageW+0x4b(hwnd=0x50026, msg=0xc, wparam=0, lparam=0x32f5c4) \
[/home/julliard/wine/wine/dlls/user32/message.c:3278] in user32 (0x0032f498) 15 \
0x6872d43b SetWindowTextW+0x6a(hwnd=0x50026, lpString="1") \
[/home/julliard/wine/wine/dlls/user32/win.c:2592] in user32 (0x0032f4c8) 16 \
0x685c2b7a IPADDRESS_WindowProc+0xaf9(hwnd=0xc0060, uMsg=0x465, wParam=0, \
lParam=0x7f000001) [/home/julliard/wine/wine/dlls/comctl32/ipaddress.c:365] in \
comctl32 (0x0032f638) 17 0x6873b42a WINPROC_wrapper+0x19() in user32 (0x0032f668)
18 0x6873bb7c call_window_proc+0x5b(hwnd=0xc0060, msg=0x465, wp=0, lp=0x7f000001, \
result=0x32fbf8, arg=0x685c2080) [/home/julliard/wine/wine/dlls/user32/winproc.c:242] \
in user32 (0x0032f6b8) 19 0x6873d210 WINPROC_CallProcAtoW+0xaf(callback=0x6873bb20, \
hwnd=0xc0060, msg=0x465, wParam=0, lParam=0x7f000001, result=0x32fbf8, \
arg=0x685c2080, mapping=WMCHAR_MAP_SENDMESSAGE) \
[/home/julliard/wine/wine/dlls/user32/winproc.c:502] in user32 (0x0032fb78) 20 \
0x6873e39b WINPROC_call_window+0x17a(hwnd=0xc0060, msg=0x465, wParam=0, \
lParam=0x7f000001, result=0x32fbf8, unicode=0, mapping=WMCHAR_MAP_SENDMESSAGE) \
[/home/julliard/wine/wine/dlls/user32/winproc.c:910] in user32 (0x0032fbc8) 21 \
0x686fe88d call_window_proc+0x8c(hwnd=0xc0060, msg=0x465, wparam=0, \
lparam=0x7f000001, unicode=0, same_thread=0x1, mapping=WMCHAR_MAP_SENDMESSAGE) \
[/home/julliard/wine/wine/dlls/user32/message.c:2211] in user32 (0x0032fc28) 22 \
0x6870557e send_message+0x20d(info=0x32fcb4, res_ptr=0x32fcb0, unicode=0) \
[/home/julliard/wine/wine/dlls/user32/message.c:3084] in user32 (0x0032fc98) 23 \
0x68705993 SendMessageA+0x52(hwnd=0xc0060, msg=0x465, wparam=0, lparam=0x7f000001) \
[/home/julliard/wine/wine/dlls/user32/message.c:3300] in user32 (0x0032fce8) 24 \
0x684f4ca3 func_ipaddress+0x1a2() \
[/home/julliard/wine/wine/dlls/comctl32/tests/ipaddress.c:56] in comctl32_test \
(0x0032fd58) 25 0x684d8807 main+0x386(argc=<couldn't compute location>, \
argv=<couldn't compute location>) \
[/home/julliard/wine/wine/dlls/comctl32/tests/../../../include/wine/test.h:557] in \
comctl32_test (0x0032fe28) 26 0x6856ae35 __wine_spec_exe_entry+0x74(peb=0x7ffdf000) \
[/home/julliard/wine/wine/dlls/winecrt0/exe_entry.c:36] in comctl32_test (0x0032fe70) \
27 0x7b85c9fc call_process_entry+0xb() in kernel32 (0x0032fe88) 28 0x7b85dbcf \
start_process+0x5e(peb=0x7ffdf000) \
[/home/julliard/wine/wine/dlls/kernel32/process.c:1083] in kernel32 (0x0032fec8) 29 \
0x7bc76ed0 call_thread_func_wrapper+0xb() in ntdll (0x0032fed8) 30 0x7bc79c0d \
call_thread_func+0x7c(entry=0x7b85db70, arg=0x7ffdf000, frame=0x32ffc8) \
[/home/julliard/wine/wine/dlls/ntdll/signal_i386.c:2522] in ntdll (0x0032ffa8) 31 \
0x7bc76eae call_thread_entry_point+0x11() in ntdll (0x0032ffc8) 32 0x7bc4ee5e \
start_process+0x1d(kernel_start=0x7b85db70) \
[/home/julliard/wine/wine/dlls/ntdll/loader.c:2653] in ntdll (0x0032ffe8) 33 \
0x6802947d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000) 34 0x6802953b \
wine_switch_to_stack+0x2a(func=0x7bc4ee40, arg=0x7b85db70, stack=0x330000) \
[/home/julliard/wine/wine/libs/wine/port.c:59] in libwine.so.1 (0xffb4dc78) 35 \
0x7bc547e8 LdrInitializeThunk+0x3b7(kernel_start=0x7b85db70, unknown2=0, unknown3=0, \
unknown4=0) [/home/julliard/wine/wine/dlls/ntdll/loader.c:2709] in ntdll (0xffb4dce8) \
36 0x7b863cd8 __wine_kernel_init+0xbb7() \
[/home/julliard/wine/wine/dlls/kernel32/process.c:1255] in kernel32 (0xffb4ebe8) 37 \
0x7bc54e63 __wine_process_init+0x182() \
[/home/julliard/wine/wine/dlls/ntdll/loader.c:2918] in ntdll (0xffb4ec68) 38 \
0x680270c2 wine_init+0x2a1(argc=0x3, argv=0xffb4f1b4, error="", error_size=0x400) \
[/home/julliard/wine/wine/libs/wine/loader.c:831] in libwine.so.1 (0xffb4ecc8) 39 \
0x7bf00ebb main+0x7a(argc=0x3, argv=0xffb4f1b4) \
[/home/julliard/wine/wine/loader/main.c:230] in <wine-loader> (0xffb4f108) 40 \
0x681c0e46 __libc_start_main+0xe5() in libc.so.6 (0xffb4f188) 0x555aef2c \
ScriptString_pSize+0xac [/home/julliard/wine/wine/dlls/usp10/usp10.c:3496] in usp10: \
movl 0x5c(%edx),%edx 3496 analysis->sz->cy = \
analysis->glyphs[0].sc->tm->otmTextMetrics.tmHeight;
--
Alexandre Julliard
julliard@winehq.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic