Module: wine Branch: master Commit: a596cbb8478372411f8596e28b68ff547ec6aee7 URL: http://source.winehq.org/git/wine.git/?a=commit;h=a596cbb8478372411f8596e28b...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Sun May 4 20:35:15 2014 +0400
dmime: Fix handling of NULL out pointer in QI.
---
dlls/dmime/segmentstate.c | 3 +++ dlls/dmime/tests/dmime.c | 3 +++ 2 files changed, 6 insertions(+)
diff --git a/dlls/dmime/segmentstate.c b/dlls/dmime/segmentstate.c index 8a9ed1f..b1b176c 100644 --- a/dlls/dmime/segmentstate.c +++ b/dlls/dmime/segmentstate.c @@ -37,6 +37,9 @@ static HRESULT WINAPI DirectMusicSegmentState8_QueryInterface(IDirectMusicSegmen
TRACE("(%p, %s, %p)\n", This, debugstr_dmguid(riid), ppobj);
+ if (!ppobj) + return E_POINTER; + *ppobj = NULL;
if (IsEqualIID(riid, &IID_IUnknown) || diff --git a/dlls/dmime/tests/dmime.c b/dlls/dmime/tests/dmime.c index 669e99e..c1c2caa 100644 --- a/dlls/dmime/tests/dmime.c +++ b/dlls/dmime/tests/dmime.c @@ -293,6 +293,9 @@ static void test_COM_segmentstate(void) ok(refcount == 4, "refcount == %u, expected 4\n", refcount); refcount = IUnknown_Release(unk);
+ hr = IDirectMusicSegmentState8_QueryInterface(dmss8, &IID_IUnknown, NULL); + ok(hr == E_POINTER, "got %08x\n", hr); + while (IDirectMusicSegmentState8_Release(dmss8)); }