[PATCH 2/4] oleaut32: IPicture::get_hPal() supports only bitmaps.

Dmitry Timoshkov dmitry at baikal.ru
Fri Jul 6 03:09:38 CDT 2018


Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
---
 dlls/oleaut32/olepicture.c | 41 ++++++++++++--------------------------
 1 file changed, 13 insertions(+), 28 deletions(-)

diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c
index da71946a40..401d940262 100644
--- a/dlls/oleaut32/olepicture.c
+++ b/dlls/oleaut32/olepicture.c
@@ -555,37 +555,22 @@ static HRESULT WINAPI OLEPictureImpl_get_Handle(IPicture *iface,
 static HRESULT WINAPI OLEPictureImpl_get_hPal(IPicture *iface,
 					      OLE_HANDLE *phandle)
 {
-  OLEPictureImpl *This = impl_from_IPicture(iface);
-  HRESULT hres;
-  TRACE("(%p)->(%p)\n", This, phandle);
+    OLEPictureImpl *This = impl_from_IPicture(iface);
 
-  if (!phandle)
-    return E_POINTER;
+    TRACE("(%p)->(%p)\n", This, phandle);
 
-  switch (This->desc.picType) {
-    case (UINT)PICTYPE_UNINITIALIZED:
-    case PICTYPE_NONE:
-      *phandle = 0;
-      hres = S_FALSE;
-      break;
-    case PICTYPE_BITMAP:
-      *phandle = HandleToUlong(This->desc.u.bmp.hpal);
-      hres = S_OK;
-      break;
-    case PICTYPE_METAFILE:
-      hres = E_FAIL;
-      break;
-    case PICTYPE_ICON:
-    case PICTYPE_ENHMETAFILE:
-    default:
-      FIXME("unimplemented for type %d. Returning 0 palette.\n",
-           This->desc.picType);
-      *phandle = 0;
-      hres = S_OK;
-  }
+    if (!phandle) return E_POINTER;
 
-  TRACE("returning 0x%08x, palette handle %08x\n", hres, *phandle);
-  return hres;
+    if (This->desc.picType == PICTYPE_BITMAP)
+    {
+        *phandle = HandleToUlong(This->desc.u.bmp.hpal);
+        return S_OK;
+    }
+
+#ifdef _WIN64
+    *phandle = 0;
+#endif
+    return E_FAIL;
 }
 
 /************************************************************************
-- 
2.17.1




More information about the wine-devel mailing list