[Bug 26028] Buitin IE crash while open a activex control from Bank of Communications

wine-bugs at winehq.org wine-bugs at winehq.org
Thu Apr 28 05:07:01 CDT 2011


http://bugs.winehq.org/show_bug.cgi?id=26028

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
                 CC|                            |focht at gmx.net
     Ever Confirmed|0                           |1

--- Comment #5 from Anastasius Focht <focht at gmx.net> 2011-04-28 05:07:00 CDT ---
Hello,

confirming, the problem seems to be a window creation failing.

--- snip ---
...
0023:Call atl.AtlModuleRegisterWndClassInfoA(10022f78,1001f8e0,020a0b00)
ret=1000a2d3
0023:fixme:atl:AtlModuleRegisterWndClassInfoA 0x10022f78 0x1001f8e0 0x20a0b00
semi-stub
0023:trace:atl:AtlModuleRegisterWndClassInfoA wci->m_wc.lpszClassName =
SECURITYBYBRYANECC
0023:Call user32.GetClassInfoExA(10000000,1001f8c8
"SECURITYBYBRYANECC",0032f0ec) ret=7a86523c
0023:Ret  user32.GetClassInfoExA() retval=00000000 ret=7a86523c
0023:Call user32.RegisterClassExA(1001f8e0) ret=7a865255
0023:trace:win:alloc_winproc allocated 0xffff0033 for A 0x1000dae3 (52/4096
used)
0023:Ret  user32.RegisterClassExA() retval=0000c062 ret=7a865255
0023:trace:atl:AtlModuleRegisterWndClassInfoA returning 0xc062
0023:Ret  atl.AtlModuleRegisterWndClassInfoA() retval=0000c062 ret=1000a2d3
0023:Call atl.AtlModuleAddCreateWndData(10022f78,020a0aec,020a0ae4)
ret=1000dc52
0023:trace:atl:AtlModuleAddCreateWndData (0x10022f78, 0x20a0aec, 0x20a0ae4)
0023:Ret  atl.AtlModuleAddCreateWndData() retval=10022f78 ret=1000dc52
0023:Call
user32.CreateWindowExA(00000000,0000c062,00000000,56000000,00000000,00000000,00000099,00000014,000200b8,020a0ae4,10000000,00000000)
ret=1000dc9b
0023:trace:win:WIN_CreateWindowEx (null) #c062 ex=00000000 style=56000000 0,0
153x20 parent=0x200b8 menu=0x20a0ae4 inst=0x10000000 params=(nil)
0023:trace:win:dump_window_styles style: WS_CHILD WS_VISIBLE WS_CLIPSIBLINGS
WS_CLIPCHILDREN
0023:trace:win:dump_window_styles exstyle:
0023:warn:win:create_window_handle error 6 creating window
0023:Ret  user32.CreateWindowExA() retval=00000000 ret=1000dc9b 
--- snip ---

By tracing wineserver you come along this:

--- snip ---
...
0023: create_class( local=1, atom=0000, style=0000000b, instance=68330000,
extra=0, win_extra=0, client_ptr=01a381b8, name=L"SECURITYBYBRYANECC" )
0023: create_class() = 0 { atom=c062 }
0023: create_window( parent=000200b8, owner=00000000, atom=c062,
instance=10000000, class=L"" )
0023: create_window() = INVALID_HANDLE { handle=00000000, parent=00000000,
owner=00000000, extra=0, class_ptr=00000000 } 
...
--- snip ---

This instance handle 68330000 seems to be bogus.
You have to use the module provided one when creating the window class first
time (wci->m_wc.hInstance = pm->m_hInst)

AtlModuleRegisterWndClassInfoA
AtlModuleRegisterWndClassInfoW

With that one fixed, the window creation sequence is properly done and app
supplied window proc gets called (which in turn calls
AtlModuleExtractCreateWndData).

--- snip ---
0021:Call atl.AtlModuleRegisterWndClassInfoA(10022f78,1001f8e0,02161b00)
ret=1000a2d3
0021:fixme:atl:AtlModuleRegisterWndClassInfoA 0x10022f78 0x1001f8e0 0x2161b00
semi-stub
0021:trace:atl:AtlModuleRegisterWndClassInfoA wci->m_wc.lpszClassName =
SECURITYBYBRYANECC
0021:Call user32.GetClassInfoExA(10000000,1001f8c8
"SECURITYBYBRYANECC",0032f0ec) ret=20ac1248
0021:Ret  user32.GetClassInfoExA() retval=00000000 ret=20ac1248
0021:Call user32.RegisterClassExA(1001f8e0) ret=20ac1261
0021:trace:win:alloc_winproc allocated 0xffff0033 for A 0x1000dae3 (52/4096
used)
0021:Ret  user32.RegisterClassExA() retval=0000c060 ret=20ac1261
0021:trace:atl:AtlModuleRegisterWndClassInfoA returning 0xc060
0021:Ret  atl.AtlModuleRegisterWndClassInfoA() retval=0000c060 ret=1000a2d3
0021:Call atl.AtlModuleAddCreateWndData(10022f78,02161aec,02161ae4)
ret=1000dc52
0021:trace:atl:AtlModuleAddCreateWndData (0x10022f78, 0x2161aec, 0x2161ae4)
0021:Ret  atl.AtlModuleAddCreateWndData() retval=10022f78 ret=1000dc52
0021:Call
user32.CreateWindowExA(00000000,0000c060,00000000,56000000,00000000,00000000,00000099,00000014,00030028,02161ae4,10000000,00000000)
ret=1000dc9b
0021:trace:win:WIN_CreateWindowEx (null) #c060 ex=00000000 style=56000000 0,0
153x20 parent=0x30028 menu=0x2161ae4 inst=0x10000000 params=(nil)
0021:trace:win:dump_window_styles style: WS_CHILD WS_VISIBLE WS_CLIPSIBLINGS
WS_CLIPCHILDREN
0021:trace:win:dump_window_styles exstyle:
0021:trace:win:WIN_SetWindowLong 0x20050 -12 2161ae4 W
0021:trace:win:GetWindowRect hwnd 0x20050 (14,158)-(167,178)
0021:trace:win:invalidate_dce 0x20050 scope hwnd = 0x30028 (14,158)-(167,178)
((14,158)-(14,158))
0021:trace:win:invalidate_dce 0x1ba6e88: hwnd 0x20030 dcx 00000013 Cache 
0021:trace:win:invalidate_dce 0x146550: hwnd 0x30028 dcx 0000001a Cache 
0021:trace:win:GetWindowRect hwnd 0x30028 (14,158)-(167,178)
0021:trace:win:make_dc_dirty     purged 0x146550 dce [0x30028]
0021:trace:win:invalidate_dce 0x143328: hwnd 0x20030 dcx 00000013 Cache InUse
0021:trace:win:WIN_CreateWindowEx hwnd 0x20050 cs 0,0 153x20
..
0021:Call window proc 0x1000dae3
(hwnd=0x20050,msg=WM_NCCREATE,wp=00000000,lp=0032f090)
0021:Call atl.AtlModuleExtractCreateWndData(10022f78) ret=1000daf0
0021:trace:atl:AtlModuleExtractCreateWndData (0x10022f78)
0021:Ret  atl.AtlModuleExtractCreateWndData() retval=02161ae4 ret=1000daf0
--- snip ---

Though it crashes a bit later ... but thats another bug (most likely a
duplicate to various "use native atl override" bugs).

Regards

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list