HBITMAP bitmap = NULL;
RECT rect;
STGMEDIUM stgm;
+ LPOLECLIENTSITE clientSite = NULL;
REOBJECT reObject;
TRACE("(%p, %d)\n", hwnd, id);
goto end;
hr = IOleObject_QueryInterface(object, &IID_IDataObject,
(void**)&dataObject);
+ if (FAILED(hr))
+ goto end;
+ hr = IRichEditOle_GetClientSite(richEditOle, &clientSite);
if (FAILED(hr))
goto end;
bitmap = LoadImageW(hInstance, MAKEINTRESOURCEW(id), IMAGE_BITMAP, 0, 0,
reObject.clsid = clsid;
reObject.poleobj = object;
reObject.pstg = NULL;
- reObject.polesite = NULL;
+ reObject.polesite = clientSite;
reObject.sizel.cx = reObject.sizel.cy = 0;
reObject.dvaspect = DVASPECT_CONTENT;
reObject.dwFlags = 0;
IRichEditOle_InsertObject(richEditOle, &reObject);
end:
+ if (clientSite)
+ IOleClientSite_Release(clientSite);
if (dataObject)
IDataObject_Release(dataObject);
if (oleCache)