diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c index e57effe69b7..3d0af78734d 100644 --- a/dlls/oleaut32/olepicture.c +++ b/dlls/oleaut32/olepicture.c @@ -842,6 +842,10 @@ static HRESULT WINAPI OLEPictureImpl_get_Attributes(IPicture *iface, { OLEPictureImpl *This = (OLEPictureImpl *)iface; TRACE("(%p)->(%p).\n", This, pdwAttr); + + if(!pdwAttr) + return E_POINTER; + *pdwAttr = 0; switch (This->desc.picType) { case PICTYPE_UNINITIALIZED: diff --git a/dlls/oleaut32/tests/olepicture.c b/dlls/oleaut32/tests/olepicture.c index ba59b50f555..7bff9b0a643 100644 --- a/dlls/oleaut32/tests/olepicture.c +++ b/dlls/oleaut32/tests/olepicture.c @@ -663,6 +663,9 @@ static void test_get_Attributes(void) ok(hres == S_OK, "IPicture_get_Type does not return S_OK, but 0x%08x\n", hres); ok(type == PICTYPE_UNINITIALIZED, "Expected type = PICTYPE_UNINITIALIZED, got = %d\n", type); + hres = IPicture_get_Attributes(pic, NULL); + ole_expect(hres, E_POINTER); + attr = 0xdeadbeef; hres = IPicture_get_Attributes(pic, &attr); ole_expect(hres, S_OK);