Rémi Bernon (@rbernon) commented about dlls/winegstreamer/media_sink.c:
LeaveCriticalSection(&media_sink->cs);return hr;- }
- if (callback)
- {
if (FAILED(hr = MFCreateAsyncResult(NULL, callback, state, &result))){LeaveCriticalSection(&media_sink->cs);free(command);return hr;}IMFAsyncResult_AddRef((command->u.finalize.result = result));- }
- hr = MFPutWorkItem(MFASYNC_CALLBACK_QUEUE_STANDARD, &media_sink->async_callback, &command->IUnknown_iface);
You're leaking command if `MFPutWorkItem` fails. Note that I missed that before but it's the same in `media_sink_queue_command`.