matroskamux: drop HEADER flag from output buffers
authorThiago Santos <thiagoss@osg.samsung.com>
Thu, 10 Sep 2015 18:26:54 +0000 (15:26 -0300)
committerThiago Santos <thiagoss@osg.samsung.com>
Thu, 10 Sep 2015 19:28:48 +0000 (16:28 -0300)
Drop HEADER flag from output buffers if they are not indeed
headers.

Fixes resending of headers in tcp connection handling

https://bugzilla.gnome.org/show_bug.cgi?id=754768

gst/matroska/ebml-write.c

index 6b6a463..d123f2c 100644 (file)
@@ -260,6 +260,8 @@ gst_ebml_write_flush_cache (GstEbmlWrite * ebml, gboolean is_keyframe,
     }
     if (ebml->writing_streamheader) {
       GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_HEADER);
+    } else {
+      GST_BUFFER_FLAG_UNSET (buffer, GST_BUFFER_FLAG_HEADER);
     }
     if (!is_keyframe) {
       GST_BUFFER_FLAG_SET (buffer, GST_BUFFER_FLAG_DELTA_UNIT);
@@ -459,6 +461,8 @@ gst_ebml_write_element_push (GstEbmlWrite * ebml, GstBuffer * buf,
     GST_BUFFER_OFFSET_END (buf) = ebml->pos;
     if (ebml->writing_streamheader) {
       GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_HEADER);
+    } else {
+      GST_BUFFER_FLAG_UNSET (buf, GST_BUFFER_FLAG_HEADER);
     }
     GST_BUFFER_FLAG_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT);