OLEPictureImpl_Load CreateIcon failed

Fabian Cenedese Cenedese at indel.ch
Thu Jan 29 08:46:45 CST 2004


>I'm still on the VB SSTab problem as described here:
>
>http://www.winehq.org/hypermail/wine-devel/2003/12/0157.html
>
>I looked further into this to find out what happens with this picture
>stuff. I found out that it fails in this function (from olepicture.c):
>
> * OLEPictureImpl_IPersistStream_Load (IUnknown)
> * Loads the binary data from the IStream. Starts at current position.
> * Currently implemented: BITMAP, ICON, JPEG.
>static HRESULT WINAPI OLEPictureImpl_Load(IPersistStream* iface,IStream*pStm) {
>
>It first reads the picture size from the stream and reads the picture
>properties and data. This works sometimes, I can see it creating
>e.g. 32x32 pictures for icons. But in this error I have it always
>fails due to the reported picture data size of zero. So it doesn't
>read any picture properties from the stream and tries to create
>a picture with 0x0 dimensions. Obviously this fails.
>But now I can't find out where this comes from. What is this stream
>where it wants to read data from? In what source file is this implemented?
>The used IStream_Load is just a macro. What could have gone wrong
>earlier that this picture size is now zero? Maybe the stream is ok but
>wine wants to create more pictures than there are?

Another one of my threads :)

I now know that it works if there are icons (property Picture) assigned
to the single tabs in the TabCtrl. But if the icons are missing, wine
goes woo. So either wine shouldn't try to create pictures if there
aren't any, or it should cope with failing CreateIcon calls. I guess
the first case would be better.

bye  Fabi





More information about the wine-devel mailing list