Fun with VB6. Crashes in OLE gunk...

Marcus Meissner marcus at jet.franken.de
Tue Jan 31 01:41:34 CST 2006


On Mon, Jan 30, 2006 at 08:27:48PM -0800, Dan Kegel wrote:
> I finally broke down and bought a copy of VB6 Pro.
> To install it, I had to pick "win98" mode in winecfg,
> and ignore a few errors.
> 
> While playing around with it, running a test app, I got Wine
> to crash on a COM problem of some sort.   In several ways.
> Here's one:
> 
> fixme:ole:OleLoadPictureEx
> (0x7d5216b4,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=16,y=16,f=0,0x7fe7c2c0),
> partially implemented.
> fixme:ole:OleLoadPictureEx
> (0x7d5216b4,0,0,{7bf80980-bf32-101a-8bbb-00aa00300cab},x=16,y=16,f=0,0x7fe7c428),
> partially implemented.
> fixme:ole:OLEFontImpl_IPersistStreamInit_InitNew (0x7cb055bc), stub!
> err:ole:ITypeInfo_fnInvoke failed to convert param 0 to
> VT_VARIANT|VT_BYREF from VT_BSTR|VT_BYREF

Here is the bad error.

> fixme:ole:OLEPictureImpl_get_hPal unimplemented for type 3. Returning 0 palette.
> fixme:ole:OLEPictureImpl_get_hPal unimplemented for type 3. Returning 0 palette.
> fixme:ole:OLEPictureImpl_Render Not quite correct implementation of
> rendering icons...
> fixme:ole:MSFT_ReadValue BSTR length = -1?
> fixme:ole:MSFT_ReadValue BSTR length = -1?
> fixme:ole:ITypeLib2_fnGetDocumentation2 (0x7baa2fb0) index -1 lcid 0
> half implemented stub!
> fixme:typelib2:ICreateTypeLib2_fnSetHelpContext (0x7bac0ee8,280000), stub!
> fixme:ole:ITypeInfo_fnRelease destroy child objects
> fixme:font:WineEngCreateFontInstance Untranslated charset 255
> fixme:ole:DllDebugObjectRPCHook stub
> wine: Unhandled page fault on read access to 0x00000000 at address
> 0x7f700844 (thread 0009), starting debugger...
> WineDbg starting on pid 0x8
> Unhandled exception: page fault on read access to 0x00000000 in 32-bit
> code (0x7f700844).
> In 32 bit mode.
> Register dump:
>  CS:0073 SS:007b DS:007b ES:007b FS:003b GS:0033
>  EIP:7f700844 ESP:7fb1f5bc EBP:7fb1f5d4 EFLAGS:00210202(   - 00      - -RI1)
>  EAX:00000000 EBX:7f751784 ECX:00000000 EDX:7baeb278
>  ESI:7baeb268 EDI:00000000
> Stack dump:
> 0x00000000:  00000000 00000000 00000000 00000000
> 0x00000010:  00000000 00000000 00000000 00000000
> 0x00000020:  00000000 00000000 00000000 00000000
> 0x00000030:  00000000 00000000 00000000 00000000
> 0x00000040:  00000000 00000000 00000000 00000000
> 0x00000050:  00000000 00000000 00000000 00000000
> Backtrace:
> =>1 0x7f700844 OLEFontImpl_put_Name+0x64(iface=0x7baeb268, name=0x0)
> [/home/dank/wine/dlls/oleaut32/../../include/winbase.h:2069] in
> oleaut32 (0x7f700844)

A NULL ptr check might help, if (!name) return E_POINTER;  or so...

Ciao, Marcus



More information about the wine-devel mailing list