Module: wine Branch: master Commit: 2ea0d6ff81b332f1aa4d793e0eb403ab308950a5 URL: https://source.winehq.org/git/wine.git/?a=commit;h=2ea0d6ff81b332f1aa4d793e0...
Author: Zebediah Figura z.figura12@gmail.com Date: Thu Feb 22 09:06:14 2018 -0600
winegstreamer: Check for failure from gst_element_set_state() instead of counting pads.
Especially since pads might be exposed before failure is reported.
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Andrew Eikum aeikum@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/winegstreamer/gstdemux.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c index b48648c..b4c29db 100644 --- a/dlls/winegstreamer/gstdemux.c +++ b/dlls/winegstreamer/gstdemux.c @@ -1160,11 +1160,11 @@ static HRESULT GST_Connect(GSTInPin *pPin, IPin *pConnectPin, ALLOCATOR_PROPERTI ResetEvent(This->event); gst_element_set_state(This->container, GST_STATE_PLAYING); WaitForSingleObject(This->event, -1); - gst_element_get_state(This->container, NULL, NULL, -1); + ret = gst_element_get_state(This->container, NULL, NULL, -1);
- if (!This->cStreams) + if (ret == GST_STATE_CHANGE_FAILURE) { - FIXME("GStreamer could not find any streams\n"); + ERR("GStreamer failed to play stream\n"); return E_FAIL; }