Trillian hangs under wine

Nikolay Sukharev nsukharev at filenet.com
Sat Nov 1 19:06:34 CST 2003


I am trying to make Trillian work under wine. It works fine up to the 
point where I try to drag its window.  Then it hangs and I even need to 
switch to the text mode shell to be able to kill wine processes. The 
error says :
err:ntdll:RtlpWaitForCriticalSection section 0x40ef98c0 "x11drv_main.c: 
X11DRV_CritSection" wait timed out in thread 0009, blocked by 000d, 
retrying (60 sec) Time:973746
Some research showed me that thread 0009 is trying to poll for new 
window messages  while thread 000d is  calling  GetCursorPos.  The 
GetCursorPos eventually results in a X11 call and it looks like this 
call never returns.

I built wine from the wine-20031016 sources.

I would appreciate if somebody can give my an insight what might be 
wrong here or where to look.

Thanks,
Nick

Below is the backtrace from winedbg:
Thread 0009:
=>0 0x401116eb (MSVCRT.DLL.strftime+0x3684b in libc.so.6) (ebp=40850c5c)
  1 0x401e227b (NTDLL_wait_for_multiple_objects+0x14f(count=0x0, 
handles=0x0, flags=0x8, timeout=0x40850d10) [sync.c:1662] in 
ntdll.dll.so) (ebp=40850cf8)
  2 0x401e0b05 (usr1_handler+0x49(__signal=0xa, __context=0x0) 
[signal_i386.c:1164] in ntdll.dll.so) (ebp=40850d1c)
  3 0x400644f8 (MSVCRT.DLL.frexp+0xb98 in libc.so.6) (ebp=40961da8)
  4 0x401e227b (NTDLL_wait_for_multiple_objects+0x14f(count=0x1, 
handles=0x40961e94, flags=0xc, timeout=0x40961eb8) [sync.c:1662] in 
ntdll.dll.so) (ebp=40961e44)
  5 0x401e22f8 (NTDLL.DLL.NtWaitForMultipleObjects+0x50 in ntdll.dll.so) 
(ebp=40961e6c)
  6 0x401e232d (NtWaitForSingleObject+0x25(handle=0x88, alertable=0x0, 
timeout=0x40961eb8) [sync.c:616] in ntdll.dll.so) (ebp=40961e8c)
  7 0x401c942e (RtlpWaitForCriticalSection+0xfe(crit=0x40ef98c0) 
[critsection.c:197] in ntdll.dll.so) (ebp=40961f20)
  8 0x401c963b (RtlEnterCriticalSection+0x77(crit=0x40ef98c0) 
[critsection.c:1664] in ntdll.dll.so) (ebp=40961f40)
  9 0x40edd5ff (wine_tsx11_lock+0x4f [x11drv_main.c:167] in 
x11drv.dll.so) (ebp=40961f68)
  10 0x40eceb9d (process_events+0x21(data=0x40321ea0) [event.c:153] in 
x11drv.dll.so) (ebp=40961fe0)
  11 0x40ececf2 (X11DRV_MsgWaitForMultipleObjectsEx+0xfe(count=0x1, 
handles=0x4036250c, timeout=0xffffffff, mask=0x0, flags=0x0) 
[event.c:195] in x11drv.dll.so) (ebp=40962108)
  12 0x40a42509 (GetMessageW+0x195(msg=0x40962288, hwnd=0x0, 
first=0x100, last=0x20d) [message.c:2363] in user32.dll.so) (ebp=409621b4)
  13 0x40edc332 (X11DRV_SysCommandSizeMove+0x3ba(hwnd=0x1002e, 
wParam=0xf012) [winpos.c:2005] in x11drv.dll.so) (ebp=409622b4)
  14 0x40a19c0c (NC_HandleSysCommand+0xb0(hwnd=0x1002e, wParam=0xf012, 
lParam=0xb0374) [nonclient.c:2152] in user32.dll.so) (ebp=409622e0)
  15 0x40a0a70c (DEFWND_DefWinProc+0x834(hwnd=0x1002e, msg=0x112, 
wParam=0xf012, lParam=0xb0374) [defwnd.c:534] in user32.dll.so) 
(ebp=40962374)
  16 0x40a0abd0 (DefWindowProcA+0x94(hwnd=0x1002e, msg=0x112, 
wParam=0xf012, lParam=0xb0374) [defwnd.c:863] in user32.dll.so) 
(ebp=409623a0)
  17 0x1001d744 (TOOLKIT.DLL.getMinorVersion+0x1ca4 in TOOLKIT.DLL) 
(ebp=40a28474)
  18 0x0c75ff02 (trillian.exe..rsrc+0xc32bf02) (ebp=6ae58955)


Thread 000d:
=>0 0x401116eb (MSVCRT.DLL.strftime+0x3684b in libc.so.6) (ebp=42750c5c)
  1 0x401e227b (NTDLL_wait_for_multiple_objects+0x14f(count=0x0, 
handles=0x0, flags=0x8, timeout=0x42750d10) [sync.c:1662] in 
ntdll.dll.so) (ebp=42750cf8)
  2 0x401e0b05 (usr1_handler+0x49(__signal=0xa, __context=0x0) 
[signal_i386.c:1164] in ntdll.dll.so) (ebp=42750d1c)
  3 0x400644f8 (MSVCRT.DLL.frexp+0xb98 in libc.so.6) (ebp=42872190)
  4 0x40f53a07 (_end+0x59037 in libX11.so.6) (ebp=428721c0)
  5 0x40f5454d (_end+0x59b7d in libX11.so.6) (ebp=42872200)
  6 0x40f4a36b (_end+0x4f99b in libX11.so.6) (ebp=42872240)
  7 0x40ed6162 (TSXQueryPointer+0x36(a0=0x3c089440, a1=0x93, 
a2=0x428722a0, a3=0x428722a4, a4=0x428722a8, a5=0x428722ac, 
a6=0x428722b0, a7=0x428722b4, a8=0x428722b8) [ts_xlib.c:480] in 
x11drv.dll.so) (ebp=42872274)
  8 0x40ed3ede (X11DRV_GetCursorPos+0x56(pos=0x42872314) [mouse.c:529] 
in x11drv.dll.so) (ebp=428722c4)
  9 0x40a0f5d7 (GetCursorPos+0x47(pt=0x42872314) [input.c:479] in 
user32.dll.so) (ebp=428722d4)
  10 0x4186d288 (EVENTS.DLL.setSkin+0x48 in EVENTS.DLL) (ebp=00000000)


Small exerpt from the custom trace I used.
trace:vasya:wine_tsx11_unlock 0009:*** BEFORE LEAVE CR.SEC. Time: 951825
trace:vasya:RtlLeaveCriticalSection LeaveCRS:0009 name:0x40ef98c0 
"x11drv_main.c: X11DRV_CritSection"
trace:vasya:wine_tsx11_unlock 0009:*** AFTER LEAVE CR.SEC. Time: 951836
trace:vasya:X11DRV_MsgWaitForMultipleObjectsEx 0009:Before WaitForM... 
Timeout:ffffffff
trace:vasya:NTDLL_wait_for_multiple_objects 0009: WFMO - BEGIN
trace:vasya:wine_tsx11_lock 000d:*** BEFORE ENTER CR.SEC. Time: 953724 
Onwer:0000 Recurs:0
trace:vasya:RtlEnterCriticalSection EnterCRS:000d name: 0x40ef98c0 
"x11drv_main.c: X11DRV_CritSection"
trace:vasya:wine_tsx11_lock 000d:*** AFTER ENTER CR.SEC. Time: 953736
trace:vasya:NTDLL_wait_for_multiple_objects 0009: WFMO - END. ret=0001
trace:vasya:wine_tsx11_lock 0009:*** BEFORE ENTER CR.SEC. Time: 958696 
Onwer:000d Recurs:1
trace:vasya:RtlEnterCriticalSection EnterCRS:0009 name: 0x40ef98c0 
"x11drv_main.c: X11DRV_CritSection"
trace:vasya:NTDLL_wait_for_multiple_objects 0009: WFMO - BEGIN
trace:vasya:NTDLL_wait_for_multiple_objects 0009: WFMO - END. ret=0102
err:ntdll:RtlpWaitForCriticalSection section 0x40ef98c0 "x11drv_main.c: 
X11DRV_CritSection" wait timed out in thread 0009, blocked by 000d, 
retrying (60 sec) Time:973746





More information about the wine-devel mailing list