Module: wine Branch: master Commit: 76925b06c2b1e4a83314a84d0c951645d6a8b642 URL: http://source.winehq.org/git/wine.git/?a=commit;h=76925b06c2b1e4a83314a84d0c...
Author: Nikolay Sivov bunglehead@gmail.com Date: Tue Jan 6 00:40:07 2009 +0300
oleaut32: Check pointer in IPicture_get_Attributes.
---
dlls/oleaut32/olepicture.c | 4 ++++ dlls/oleaut32/tests/olepicture.c | 3 +++ 2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/dlls/oleaut32/olepicture.c b/dlls/oleaut32/olepicture.c index e57effe..3d0af78 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 ba59b50..7bff9b0 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);