On Sat, Aug 16, 2008 at 11:26:42PM -0400, Adam Petaccia wrote:
This seems like the right thing to do, but OleLoadImage fails. Comments welcome. --- dlls/gdiplus/image.c | 42 ++++++++++++++++++++++++++++++++++++++++-- dlls/gdiplus/tests/image.c | 2 +- 2 files changed, 41 insertions(+), 3 deletions(-)
diff --git a/dlls/gdiplus/image.c b/dlls/gdiplus/image.c index 197665d..a74003f 100644 --- a/dlls/gdiplus/image.c +++ b/dlls/gdiplus/image.c @@ -242,11 +242,49 @@ GpStatus WINGDIPAPI GdipBitmapUnlockBits(GpBitmap* bitmap,
GpStatus WINGDIPAPI GdipCloneImage(GpImage *image, GpImage **cloneImage) {
+ hr = OleLoadPicture(stream, size, FALSE, &IID_IPicture, + (LPVOID*)(*cloneImage)->picture);
This can't be right. You need to pass the address of the interface ptr. Huw. -- Huw Davies huw(a)codeweavers.com