From 45e05706e28439961ac81ce0c8e6403e8e8f03f5 Mon Sep 17 00:00:00 2001 From: Stian Selnes Date: Tue, 21 Jul 2015 13:31:05 +0200 Subject: [PATCH] rtpvp8depay: Check available bytes before copy Need to check that the number of bytes we want to copy from the adapter actually is available and handle the error case gracefully. This error may happen if malformed packets are received and we don't have a complete frame. https://bugzilla.gnome.org/show_bug.cgi?id=752663 --- gst/rtp/gstrtpvp8depay.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gst/rtp/gstrtpvp8depay.c b/gst/rtp/gstrtpvp8depay.c index 128bb7d..f87a80f 100644 --- a/gst/rtp/gstrtpvp8depay.c +++ b/gst/rtp/gstrtpvp8depay.c @@ -173,6 +173,8 @@ gst_rtp_vp8_depay_process (GstRTPBaseDepayload * depay, GstRTPBuffer * rtp) GstBuffer *out; guint8 header[10]; + if (gst_adapter_available (self->adapter) < 10) + goto too_small; gst_adapter_copy (self->adapter, &header, 0, 10); out = gst_adapter_take_buffer (self->adapter, -- 2.7.4