convertframe: Error out directly in the sync variant if the state change to PAUSED...
authorSebastian Dröge <sebastian@centricular.com>
Fri, 23 Nov 2018 11:25:43 +0000 (13:25 +0200)
committerSebastian Dröge <slomo@coaxion.net>
Fri, 23 Nov 2018 11:52:16 +0000 (11:52 +0000)
gst-libs/gst/video/convertframe.c

index f02f05b85bf06b28803180c6b0e307f3bc08b4f5..4b69fa4457007fe3e1ba151d4148e51d2d8e75cf 100644 (file)
@@ -340,7 +340,9 @@ gst_video_convert_sample (GstSample * sample, const GstCaps * to_caps,
    * appsrc, this should preroll the converted buffer in appsink */
   GST_DEBUG ("running conversion pipeline to caps %" GST_PTR_FORMAT,
       to_caps_copy);
-  gst_element_set_state (pipeline, GST_STATE_PAUSED);
+  if (gst_element_set_state (pipeline,
+          GST_STATE_PAUSED) == GST_STATE_CHANGE_FAILURE)
+    goto state_change_failed;
 
   /* feed buffer in appsrc */
   GST_DEBUG ("feeding buffer %p, size %" G_GSIZE_FORMAT ", caps %"
@@ -403,6 +405,7 @@ gst_video_convert_sample (GstSample * sample, const GstCaps * to_caps,
 
   /* ERRORS */
 no_pipeline:
+state_change_failed:
   {
     gst_caps_unref (to_caps_copy);