rtmpsrc: error out if we get EOS immediately without any data
authorTim-Philipp Müller <tim@centricular.com>
Fri, 11 Apr 2014 18:38:32 +0000 (19:38 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Sat, 10 May 2014 11:57:29 +0000 (12:57 +0100)
It's not really right to just go EOS as if nothing was wrong.

ext/rtmp/gstrtmpsrc.c

index a38b8b89dbace336ee0613219fcb3f0a300b4425..b6c40482928c4f9c68064c8faad55ca25f9a2ed5 100644 (file)
@@ -389,8 +389,14 @@ read_failed:
 eos:
   {
     gst_buffer_unref (buf);
-    GST_DEBUG_OBJECT (src, "Reading data gave EOS");
-    return GST_FLOW_EOS;
+    if (src->cur_offset == 0) {
+      GST_ELEMENT_ERROR (src, RESOURCE, READ, (NULL),
+          ("Failed to read any data from stream, check your URL"));
+      return GST_FLOW_ERROR;
+    } else {
+      GST_DEBUG_OBJECT (src, "Reading data gave EOS");
+      return GST_FLOW_EOS;
+    }
   }
 }