From: Zebediah Figura zfigura@codeweavers.com
Signed-off-by: Zebediah Figura zfigura@codeweavers.com --- dlls/winegstreamer/gstdemux.c | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c index 1337cd0a81c..488c9bd8a13 100644 --- a/dlls/winegstreamer/gstdemux.c +++ b/dlls/winegstreamer/gstdemux.c @@ -1455,6 +1455,7 @@ static HRESULT gstdemux_cleanup_stream(struct strmbase_filter *iface) { struct gstdemux *filter = impl_from_strmbase_filter(iface); GstStateChangeReturn ret; + unsigned int i;
if (!filter->container) return S_OK; @@ -1468,6 +1469,12 @@ static HRESULT gstdemux_cleanup_stream(struct strmbase_filter *iface) gst_element_get_state(filter->container, NULL, NULL, GST_CLOCK_TIME_NONE); filter->ignore_flush = FALSE;
+ for (i = 0; i < filter->source_count; ++i) + { + if (filter->sources[i]->pin.pin.peer) + IMemAllocator_Decommit(filter->sources[i]->pin.pAllocator); + } + return S_OK; }