rtph264depay: Exclude NALu size from payload length on truncated packets.
authorPascal Buhler <pascal.buhler@tandberg.com>
Fri, 11 Jun 2010 06:36:33 +0000 (08:36 +0200)
committerVincent Penquerc'h <vincent.penquerch@collabora.co.uk>
Mon, 30 Jan 2012 15:49:07 +0000 (15:49 +0000)
https://bugzilla.gnome.org/show_bug.cgi?id=667846

gst/rtp/gstrtph264depay.c

index 27b5d4b9f01815c396d78bcafb8b2ce3ad6bb700..efe172593380b6e1e9178542a4db611da633ccef 100644 (file)
@@ -735,8 +735,9 @@ gst_rtp_h264_depay_process (GstBaseRTPDepayload * depayload, GstBuffer * buf)
            */
           nalu_size = (payload[0] << 8) | payload[1];
 
-          if (nalu_size > payload_len)
-            nalu_size = payload_len;
+          /* dont include nalu_size */
+          if (nalu_size > (payload_len - 2))
+            nalu_size = payload_len - 2;
 
           outsize = nalu_size + sizeof (sync_bytes);
           outbuf = gst_buffer_new_and_alloc (outsize);