diff options
author | Seungha Yang <seungha@centricular.com> | 2021-09-02 22:06:52 +0900 |
---|---|---|
committer | Seungha Yang <seungha@centricular.com> | 2021-09-02 23:17:58 +0900 |
commit | f2fa75accbd62a656f78b8467cfdb59e0510b0e9 (patch) | |
tree | 6cfa9e386fbd7dee0be1f89b453f763e3e2a9b71 /gst/videoparsers/gstvideoparseutils.c | |
parent | cfc80e51686606b36e3daf8bd6c96f540d9f6011 (diff) | |
download | gstreamer-plugins-bad-f2fa75accbd62a656f78b8467cfdb59e0510b0e9.tar.gz |
videoparseutils: Fix for wrong CEA708 minimum size check
The minimum possible size of valid CEA708 data is 3 bytes, not 7 bytes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2505>
Diffstat (limited to 'gst/videoparsers/gstvideoparseutils.c')
-rw-r--r-- | gst/videoparsers/gstvideoparseutils.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gst/videoparsers/gstvideoparseutils.c b/gst/videoparsers/gstvideoparseutils.c index cec724ac2..4e94d21b5 100644 --- a/gst/videoparsers/gstvideoparseutils.c +++ b/gst/videoparsers/gstvideoparseutils.c @@ -142,7 +142,11 @@ gst_video_parse_user_data (GstElement * elt, GstVideoParseUserData * user_data, } switch (user_data_type_code) { case A53_USER_DATA_TYPE_CODE_CC_DATA: - if (gst_byte_reader_get_remaining (br) < 7) { + /* 1 (cc count byte) + + * 1 (reserved byte, 0xff) + + * 1 (marker_bits, 0xff) + */ + if (gst_byte_reader_get_remaining (br) < 3) { GST_WARNING_OBJECT (elt, "Closed caption data packet too short, ignoring"); break; |