[Mesa-dev] [PATCH kmscube 2/2] gst-decoder.c: assert if GST_VIDEO_INFO_N_PLANES returns too many planes

Emil Velikov emil.l.velikov at gmail.com
Tue May 2 13:32:02 UTC 2017


From: Emil Velikov <emil.velikov at collabora.com>

Assert in the very unlikely case when GST_VIDEO_INFO_N_PLANES returns
more than MAX_NUM_PLANES. Otherwise we'll get random memory corruption.

Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
 gst-decoder.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gst-decoder.c b/gst-decoder.c
index dd2a6fa..d3cdd9f 100644
--- a/gst-decoder.c
+++ b/gst-decoder.c
@@ -368,6 +368,8 @@ buffer_to_image(struct decoder *dec, GstBuffer *buf)
 	GstMemory *mem;
 	int dmabuf_fd = -1;
 
+	assert(nplanes != MAX_NUM_PLANES);
+
 	/* Query gst_is_dmabuf_memory() here, since the gstmemory
 	 * block might get merged below by gst_buffer_map(), meaning
 	 * that the mem pointer would become invalid */
-- 
2.12.2



More information about the mesa-dev mailing list