Zebediah Figura : winegstreamer: Check for failure from gst_element_set_state() instead of counting pads.

Alexandre Julliard julliard at winehq.org
Thu Feb 22 15:07:47 CST 2018


Module: wine
Branch: master
Commit: 2ea0d6ff81b332f1aa4d793e0eb403ab308950a5
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=2ea0d6ff81b332f1aa4d793e0eb403ab308950a5

Author: Zebediah Figura <z.figura12 at 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 at gmail.com>
Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at 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;
     }
 




More information about the wine-cvs mailing list