Module: wine Branch: master Commit: ee209a93cb786d120032eaa285729e28f64f5b11 URL: https://gitlab.winehq.org/wine/wine/-/commit/ee209a93cb786d120032eaa285729e2...
Author: Zebediah Figura zfigura@codeweavers.com Date: Wed Nov 8 14:13:23 2023 -0600
mfplat/tests: Shut down the media source in test_create_from_file_handler_callback_Invoke().
Break its reference count cycle so that we don't leak it.
---
dlls/mfplat/tests/mfplat.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/dlls/mfplat/tests/mfplat.c b/dlls/mfplat/tests/mfplat.c index 5f9460655ec..4fcf5f19558 100644 --- a/dlls/mfplat/tests/mfplat.c +++ b/dlls/mfplat/tests/mfplat.c @@ -781,15 +781,25 @@ static HRESULT WINAPI test_create_from_file_handler_callback_Invoke(IMFAsyncCall
hr = IMFSchemeHandler_EndCreateObject(handler, result, &obj_type, &object); ok(hr == S_OK, "Failed to create an object, hr %#lx.\n", hr); + todo_wine ok(obj_type == MF_OBJECT_BYTESTREAM, "Got object type %#x.\n", obj_type);
- if (SUCCEEDED(hr)) + hr = IMFAsyncResult_GetObject(result, (IUnknown **)&object2); + ok(hr == E_POINTER, "Unexpected hr %#lx.\n", hr); + + if (obj_type == MF_OBJECT_MEDIASOURCE) { - hr = IMFAsyncResult_GetObject(result, &object2); - ok(hr == E_POINTER, "Unexpected hr %#lx.\n", hr); + IMFMediaSource *media_source;
- IUnknown_Release(object); + hr = IUnknown_QueryInterface(object, &IID_IMFMediaSource, (void **)&media_source); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + + hr = IMFMediaSource_Shutdown(media_source); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + IMFMediaSource_Release(media_source); }
+ IUnknown_Release(object); + SetEvent(callback->event);
return S_OK;