libs: encoder: make sure format array is not NULL when returning TRUE

This fixed segfault when running the pipeline below with iHD driver
(commit efe5e9a) on ICL

gst-launch-1.0 videotestsrc ! vaapivp9enc tune=low-power ! vaapivp9dec ! \
fakesink
This commit is contained in:
Haihao Xiang 2020-03-31 12:22:31 +08:00
parent ecbf070fa4
commit f680a8cba1

View file

@ -1481,9 +1481,13 @@ get_profile_surface_attributes (GstVaapiEncoder * encoder,
return FALSE; return FALSE;
ret = gst_vaapi_context_get_surface_attributes (ctxt, attribs); ret = gst_vaapi_context_get_surface_attributes (ctxt, attribs);
if (ret) if (ret) {
attribs->formats = gst_vaapi_context_get_surface_formats (ctxt); attribs->formats = gst_vaapi_context_get_surface_formats (ctxt);
if (!attribs->formats)
ret = FALSE;
}
gst_vaapi_context_unref (ctxt); gst_vaapi_context_unref (ctxt);
return ret; return ret;
} }