[Bug 45212] Getting IPicture errors - not implemented, cannot connect

wine-bugs at winehq.org wine-bugs at winehq.org
Sat May 19 19:53:37 CDT 2018


https://bugs.winehq.org/show_bug.cgi?id=45212

--- Comment #16 from Dave <gcos7 at yahoo.com> ---
I was looking today at the source for wine, and in particular at the
oleaut32.dll in the dlls directory.  I notice a log of C code in there
apparently done by CodeWeavers.  Once such piece of code is olepicture.c.  In
that code, in this function:


/************************************************************************
 * OLEPictureImpl_get_hPal
 */
static HRESULT WINAPI OLEPictureImpl_get_hPal(IPicture *iface,
                          OLE_HANDLE *phandle)

is the handling for the pictype.  In this switch statement:

switch (This->desc.picType)

there is no code for pictype of 3 (from what i saw on the net for the
description of the ipicture handling, a pictype of 3 means icon):

    case PICTYPE_ICON:

As a result of this the pointer to the handle is returned as a null.  So, there
is nothing for the calls to findconnectionpoint will fail because of the null
pointer.

So, not understanding at all how all of this fits into wine, is it save to say
these .c files are used at build time for wine?  If so, then overriding with
oleaut32.dll wouldn't actually do anything would it?

I don't understand at all how run time libraries work (dll for windows, so
files for linux?).  From my old C experience, which is more than just a LITTLE
bit rusty ;) I would have thought the .c files had to be included at
compilation time.

Is this of any help or am I just shooting in the wind again? ;)

-- 
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