[prev in list] [next in list] [prev in thread] [next in thread] 

List:       wine-devel
Subject:    Crash probably related to CBClientXXX
From:       Uwe Bonnes <bon () elektron ! ikp ! physik ! tu-darmstadt ! de>
Date:       1999-08-24 8:07:47
[Download RAW message or body]

Hallo,

running a programm with native user and friends crashes when I try to
open the File Selection Box.
hertz:/cdroms/se99> wine -desktop 800x600 -dll \
user,user32,shell,shell32,commdlg,comdlg32,commctrl,comctl32,advapi32=n -debugmsg \
+relay,+snoop,+segment,+thunk setup.exe >& /tmp/wine.debug The crash happens at \
different places, depending if I use snoop debugging or not.
Here is what I think is important from the +relay,+snoop log.
The return argument to OPENFILENAME_CALLBACK16 seems bad
(ret=0000:0ad)
Call USER.25: GETPROP(<unknown, check return>) ret=0aaf:42ba
Ret  USER.25: GETPROP(018c,0000,a000) retval = 0000:0000 ret=0aaf:42ba
Call KERNEL.604: CBCLIENTGLUESL() ret=0004:0000 ds=0ad7
     AX=ff20 BX=0000 CX=0fdb DX=0000 SI=018c DI=0000 ES=0307 EFL=00000216
Ret  KERNEL.604: CBCLIENTGLUESL() retval=none ret=0207:3542 ds=0ad7
     AX=ff20 BX=0000 CX=0fdb DX=0000 SI=018c DI=0000 ES=0307 EFL=00000216
Call USER.802: OPENFILENAME_CALLBACK16(<unknown, check return>) ret=0000:0ad7
Call KERNEL.620: CBCLIENTTHUNKSL() ret=02e7:45da ds=0307
     AX=0000 BX=0000 CX=0000 DX=0002 SI=0020 DI=0000 ES=0307 EFL=00000216
Call USER32.565: WNDPROC_CALLBACK(<unknown, check return>) ret=0816704e fs=08af
Call KERNEL32.86: _KERNEL32_86(084504a0) ret=bff632f0 fs=08af
CallTo16(func=020f:0591,ds=0000) ss:sp=00d7:ffd0
     AX=8001 BX=f99a CX=836a DX=0000 SI=fd3c DI=4073 BP=0000 ES=0000 FS=0000
Call KERNEL.451: VWIN32_EVENTSET(0x544a4de2) ret=020f:0497 ds=02ff
Ret  KERNEL.451: VWIN32_EVENTSET() retval=0x00000001 ret=020f:0497 ds=02ff
Call DISPLAY.103: MOVECURSOR(0x030c,0x0134) ret=020f:06ad ds=02ff
Ret  DISPLAY.103: MOVECURSOR() retval=0x6970 ret=020f:06ad ds=02ff
CallTo16() ss:sp=00d7:ffd0 retval=0x01340200
Ret  KERNEL.450: VWIN32_EVENTWAIT() retval=0x00000000 ret=020f:056a ds=0307
Call KERNEL.480: _ENTERWIN16LOCK() ret=020f:0537 ds=0307
Ret  KERNEL.480: _ENTERWIN16LOCK() retval=0x0254 ret=020f:0537 ds=0307
Call KERNEL.481: _LEAVEWIN16LOCK() ret=020f:055a ds=0307
Ret  KERNEL.481: _LEAVEWIN16LOCK() retval=0x0254 ret=020f:055a ds=0307
Call KERNEL.450: VWIN32_EVENTWAIT(0x544a4de2) ret=020f:056a ds=0307
Ret  KERNEL32.86: _KERNEL32_86() retval=00000254 ret=bff632f0 fs=08af
Call KERNEL32.51: W32S_BackTo32() ret=0041ca99 fs=08af
 eax=00000254 ebx=4108fa9c ecx=00000000 edx=00000046 esi=4108fac0 edi=41080000
 ebp=4108fac6 esp=4107de98 ds=002b es=002b gs=0000 flags=00000297
Ret  KERNEL32.51: W32S_BackTo32() retval=00000000 ret=bff63309 fs=08af
 eax=00000000 ebx=4108fa9c ecx=00000000 edx=00000046 esi=4108fac0 edi=41080000
 ebp=4108fac6 esp=4107de9c ds=002b es=002b gs=0000 flags=00000297
Call KERNEL32.97: _EnterSysLevel(084504a0) ret=bff63320 fs=08af
Ret  KERNEL32.97: _EnterSysLevel() retval=00000254 ret=bff63320 fs=08af
Ret  USER32.565: WNDPROC_CALLBACK(00000023) retval = 00000000 ret=0816704e fs=08
af
Ret  KERNEL.620: CBCLIENTTHUNKSL() retval=none ret=02e7:45da ds=0307
     AX=0000 BX=0000 CX=0000 DX=0002 SI=fac0 DI=0000 ES=0307 EFL=00000216
Call KERNEL32.702: UnhandledExceptionFilter(0843dc0c) ret=0048812c fs=08af
Unhandled exception: priviledged instruction in 16-bit code (02e7:460d).
Loading symbols: wine /usr/X11R6/lib/libSM.so.6 /usr/X11R6/lib/libICE.so.6
Loading symbols: wine /usr/X11R6/lib/libSM.so.6 /usr/X11R6/lib/libICE.so.6
    /usr/X11R6/lib/libXpm.so.4 /usr/lib/libMesaGL.so.3
    /usr/X11R6/lib/libXext.so.6 /usr/X11R6/lib/libX11.so.6
    /lib/libncurses.so.4 /lib/libm.so.6 /lib/libdl.so.2 /lib/libc.so.6
    /lib/ld-linux.so.2
    COMMDLG COMMCTRL DDEML COMM MOUSE KEYBOARD USER GDI KERNEL WINEPS WPROCS
    DISPLAY SYSTEM WGRP95.dll OLE32 4179.DLL _ISRES.dll _INS0432._MP
    comdlg32.dll WINSPOOL COMCTL32.dll ADVAPI32.dll VERSION USER32.dll GDI32
    KERNEL32 NTDLL
In 16 bit mode.
Register dump:
 CS:02e7 SS:08b7 DS:0307 ES:0307 FS:08af GS:0000
 IP:460d SP:fac0 BP:fac6 FLAGS:0a17(   - 00O I   -A-P1C)
 AX:0000 BX:0307 CX:0000 DX:0000 SI:fac0 DI:0000
Stack dump:
0x08b7:0xfac0:  0017 06ff 018c fb28 0000 0004 ca99 0041
0x08b7:0xfad0:  4139 0aaf 0000 0000 1b8a 0030 018c 018c
0x08b7:0xfae0:  0000 0000 0307 08b7 08af 0000 0584 0000
0x08b7:0xfaf0: 

0060: sel=0307 base=408f0000 limit=0011ffff 16-bit rw-
0115: sel=08af base=40e9045c limit=00000fff 32-bit rw-
Backtrace:
=>0 0x02e7:0x460d (bp=fac6)
  1 0x02e7:0x0000 (bp=fb28)
  2 0x02e7:0x42ca (bp=fb40)
  3 0x0247:0x2e7f (bp=fb64, far call assumed)
  4 0x0247:0x2eeb (bp=fb92)
  5 0x0247:0x478e (bp=fba8)
  6 0x021f:0x82e7 (bp=fc4a, far call assumed)
  7 0x0247:0x37ef (bp=fc70, far call assumed)
  8 0x0247:0x45a0 (bp=fc88)
  9 0x06ff:0x0000 (bp=fcae, far call assumed)
  10 0x06ff:0x1444 (bp=fcbc)
  11 0x0aa7:0x0722 (bp=fd5e, far call assumed)

0x02e7:0x460d:  pop     %ds
Wine-dbg>

Running without +snoop gets out of OPENFILENAME_CALLBACK16, but
somehow the Callback table for the CBClient gets corrupted. The last 
CBCLIENTGLUESL() Call returns 0000:0025, while earlier ones return
02d7:45a0. The CBClientRelay16 table resides inside 0a8f:0014, but
between the second to last and last call the CBCLIENTGLUESL() I didn't 
find something obvious to corrupt this table.

563491  Call KERNEL.604: CBCLIENTGLUESL() ret=0004:0000 ds=0a8f
563492       AX=ff1c BX=0887 CX=0000 DX=f970 SI=f980 DI=f802 ES=0887 EFL=00000216
563493  Ret  KERNEL.604: CBCLIENTGLUESL() retval=none ret=02d7:45a0 ds=0a8f
...
565548  Call DISPLAY.102: SETCURSOR(06bf:0000) ret=0227:414e ds=02f7
565549  Ret  DISPLAY.102: SETCURSOR() retval=0x0001 ret=0227:414e ds=02f7
565550  Call KERNEL.19: GLOBALUNLOCK(0x06be) ret=0227:4261 ds=02f7
565551  Ret  KERNEL.19: GLOBALUNLOCK() retval=0x0000 ret=0227:4261 ds=02f7
565552  Call KERNEL.327: K327() ret=0237:45d7 ds=0a8f
565553       AX=0000 BX=6040 CX=0000 DX=45d7 SI=0000 DI=0000 ES=02f7 EFL=00000216
565554  (ERR_BAD_HWND, 0x23745d7, (nil))
565555  Ret  KERNEL.327: K327() retval=none ret=0237:45e8 ds=0a8f
565556       AX=0000 BX=6040 CX=0000 DX=0000 SI=0000 DI=0000 ES=0000 EFL=00000216
565557  Call KERNEL.327: K327() ret=020f:4fe6 ds=0a8f
565558       AX=0000 BX=6040 CX=0000 DX=4fe6 SI=0000 DI=0000 ES=02f7 EFL=00000216
565559  (ERR_BAD_HWND, 0x20f4fe6, (nil))
565560  Ret  KERNEL.327: K327() retval=none ret=020f:5017 ds=0a8f
565561       AX=0000 BX=6040 CX=0000 DX=0000 SI=0000 DI=0000 ES=0000 EFL=00000216
565562  Call KERNEL.327: K327() ret=020f:4fe6 ds=0a8f
565563       AX=0000 BX=6040 CX=0000 DX=4fe6 SI=0000 DI=0000 ES=02f7 EFL=00000216
565564  (ERR_BAD_HWND, 0x20f4fe6, (nil))
565565  Ret  KERNEL.327: K327() retval=none ret=020f:5017 ds=0a8f
565566       AX=0000 BX=6040 CX=0000 DX=0000 SI=0000 DI=0000 ES=0000 EFL=00000216
565567  Call KERNEL.327: K327() ret=0237:4682 ds=0a8f
565568       AX=0000 BX=6040 CX=0000 DX=4682 SI=0000 DI=0000 ES=02f7 EFL=00000216
565569  (ERR_BAD_HWND, 0x2374682, (nil))
565570  Ret  KERNEL.327: K327() retval=none ret=0237:469c ds=0a8f
565571       AX=0000 BX=6040 CX=0000 DX=0000 SI=0000 DI=0000 ES=0000 EFL=00000216
565572  Call KERNEL.327: K327() ret=0237:471a ds=0a8f
565573       AX=0000 BX=6040 CX=0000 DX=471a SI=0000 DI=0000 ES=02f7 EFL=00000216
565574  (ERR_BAD_HWND, 0x237471a, (nil))
565575  Ret  KERNEL.327: K327() retval=none ret=0237:473a ds=0a8f
565576       AX=0000 BX=6040 CX=0000 DX=0000 SI=0000 DI=0000 ES=0000 EFL=00000216
565577  Call KERNEL.604: CBCLIENTGLUESL() ret=0004:0000 ds=0a8f
565578       AX=0000 BX=fcc6 CX=0000 DX=0000 SI=0000 DI=0000 ES=0887 EFL=00000216
565579  Ret  KERNEL.604: CBCLIENTGLUESL() retval=none ret=0000:0025 ds=0a8f
565580       AX=0000 BX=fcc6 CX=0000 DX=0000 SI=0000 DI=0000 ES=0887 EFL=00000216
565581  Call KERNEL32.702: UnhandledExceptionFilter(0843dc0c) ret=0048812c fs=087f
565582  Unhandled exception: priviledged instruction in 16-bit code (0157:06d8).
565583  Loading symbols: wine /usr/X11R6/lib/libSM.so.6 /usr/X11R6/lib/libICE.so.6
565584      /usr/X11R6/lib/libXpm.so.4 /usr/lib/libMesaGL.so.3
565585      /usr/X11R6/lib/libXext.so.6 /usr/X11R6/lib/libX11.so.6
565586      /lib/libncurses.so.4 /lib/libm.so.6 /lib/libdl.so.2 /lib/libc.so.6
565587      /lib/ld-linux.so.2
565588      COMMDLG COMMCTRL DDEML COMM MOUSE KEYBOARD USER GDI KERNEL WINEPS WPROCS
565589      DISPLAY SYSTEM WGRP95.dll OLE32 4283.DLL _ISRES.dll _INS0432._MP
565590      comdlg32.dll WINSPOOL COMCTL32.dll ADVAPI32.dll VERSION USER32.dll GDI32
565591      KERNEL32 NTDLL
565592  In 32 bit mode.
565593  Register dump:
565594   CS:0157 SS:0887 DS:0a8f ES:0887 FS:03b7 GS:0000
565595   EIP:000006d8 ESP:0000fa9a EBP:0000faa4 EFLAGS:00010216(  R- 00  I   -A-P1 )
565596   EAX:00000000 EBX:0407fcc6 ECX:00000000 EDX:00000000
565597   ESI:00020000 EDI:00020000
565598  Stack dump:
565599  0x0887:0x0000fa9a:  0025 0000 0a8f 0000 0000 fad0 0000 0004
565600  0x0887:0x0000faaa:  ca99 0041 3675 0a67 0000 0000 0471 c92b
565601  0x0887:0x0000faba:  0000 018c 0e20 03a4 0000 fcc6 0887 0000
565602  0x0887:0x0000faca: 
565603  
565604  0076: sel=03b7 base=408d0000 limit=000fffff 16-bit rw-
565605  Backtrace:
565606  =>0 0x0157:0x06d8 (bp=faa4)
565607    1 0x0157:0x0000 (bp=fad0)
565608    2 0x0157:0x3f29 (KERNEL.SSCONFIRMSMALLSTACK+0x25e0) (bp=fb00)
565609    3 0x0157:0x1cfe (KERNEL.SSCONFIRMSMALLSTACK+0x3b5) (bp=fb2a)
565610    4 0x0157:0x43f6 (KERNEL.SSCONFIRMSMALLSTACK+0x2aad) (bp=fb40)
565611    5 0x0237:0x2e7f (bp=fb64, far call assumed)
565612    6 0x0237:0x2eeb (bp=fb92)
565613    7 0x0237:0x478e (USER.GETDLGCTRLID+0x51) (bp=fba8)
565614    8 0x020f:0x82e7 (USER.BEAR498+0x14e) (bp=fc4a, far call assumed)
565615    9 0x0237:0x37ef (bp=fc70, far call assumed)
565616    10 0x0237:0x45a0 (USER.DIALOGBOXINDIRECTPARAM+0x3a) (bp=fc88)
565617    11 0x0a67:0x13ae (COMMDLG.COMMDLGEXTENDEDERROR+0x125e) (bp=fcae, far call \
assumed) 565618    12 0x0a67:0x1444 (COMMDLG.GETSAVEFILENAME+0x16) (bp=fcbc)
565619    13 0x0a5f:0x0722 (COMMDLG.DLGTHKCONNECTIONDATALS+0x54a) (bp=fd5e, far call \
assumed) 565620  
565621  0x0157:0x000006d8:  lret        
565622  Wine-dbg>quit

Different crash behaviour with and without +snoop fast in other cases
often caused by a missing WINAPI or so. Could this be the case here
too?

Bye

Uwe Bonnes                bon@elektron.ikp.physik.tu-darmstadt.de

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------


=========================================================================


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic