http://bugs.winehq.org/show_bug.cgi?id=30353
Qian Hong fracting@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |piotr@codeweavers.com
--- Comment #8 from Qian Hong fracting@gmail.com --- Still crashing with Piotr's patches.
I initialize *ppObject to 0xdeadbeef, and found the crashing is still caused by ObjectFromLresult failure. I can't found corresponding LresultFromObject in the trace log, only ObjectFromLresult found. Maybe we need to implement ObjectFromLresult exactly like natives for compatibility, it is likely that something like lresult_atom_prefix is not compatible enough.
+ if(!ppObject) + return E_INVALIDARG; + *ppObject = (void *)0xdeadbeef;
002f:Call KERNEL32.GetProcAddress(7db40000,00babc40 "ObjectFromLresult") ret=00b93389 002f:Ret KERNEL32.GetProcAddress() retval=7db42be8 ret=00b93389 002f:Call oleacc.ObjectFromLresult(00000000,00ba859c,00000000,024be398) ret=00b933a1 002f:trace:oleacc:ObjectFromLresult 0 {332c4425-26cb-11d0-b483-00c04fd90119} 0 0x24be398 002f:Call KERNEL32.GlobalGetAtomNameW(00000000,024be2c2,00000027) ret=7db43014 002f:Ret KERNEL32.GlobalGetAtomNameW() retval=00000000 ret=7db43014 002f:Ret oleacc.ObjectFromLresult() retval=80004005 ret=00b933a1 002f:trace:seh:raise_exception code=c0000005 flags=0 addr=0xb9347f ip=00b9347f tid=002f 002f:trace:seh:raise_exception info[0]=00000000 002f:trace:seh:raise_exception info[1]=deadbeef 002f:trace:seh:raise_exception eax=deadbeef ebx=00000000 ecx=024be398 edx=7bcaaec0 esi=024be3d0 edi=024be8c0 002f:trace:seh:raise_exception ebp=024be3b0 esp=024be388 cs=0073 ds=007b es=007b fs=0033 gs=003b flags=00010282 002f:trace:seh:call_stack_handlers calling handler at 0xb9a520 code=c0000005 flags=0 002f:Call KERNEL32.GetLastError() ret=00b6af5f 002f:Ret KERNEL32.GetLastError() retval=00000057 ret=00b6af5f
Piotr, could you have a look at this bug? Thanks a lot!