This avoids segment fault in VPP
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
VAProcFilterParameterBufferBase *filter_param = (VAProcFilterParameterBufferBase *)obj_buffer->buffer_store->buffer;
VAProcFilterType filter_type = filter_param->type;
VASurfaceID out_surface_id = VA_INVALID_ID;
+ int kernel_index = procfilter_to_pp_flag[filter_type];
- if (procfilter_to_pp_flag[filter_type] != PP_NULL) {
+ if (kernel_index != PP_NULL &&
+ proc_context->pp_context.pp_modules[kernel_index].kernel.bo != NULL) {
status = i965_CreateSurfaces(ctx,
in_width,
in_height,
&src_rect,
&dst_surface,
&src_rect,
- procfilter_to_pp_flag[filter_type],
+ kernel_index,
filter_param);
if (status == VA_STATUS_SUCCESS) {