diff --git a/src/gen75_picture_process.c b/src/gen75_picture_process.c index 0b681f1e8..2b82314e8 100644 --- a/src/gen75_picture_process.c +++ b/src/gen75_picture_process.c @@ -286,7 +286,9 @@ gen75_proc_picture(VADriverContextP ctx, if(pipeline_param->num_filters == 0 || pipeline_param->filters == NULL ){ /* implicity surface format coversion and scaling */ - gen75_vpp_fmt_cvt(ctx, profile, codec_state, hw_context); + status = gen75_vpp_fmt_cvt(ctx, profile, codec_state, hw_context); + if(status != VA_STATUS_SUCCESS) + goto error; }else if(pipeline_param->num_filters == 1) { struct object_buffer * obj_buf = BUFFER((*filter_id) + 0); diff --git a/src/i965_post_processing.c b/src/i965_post_processing.c index 969f84b7c..1b4036f8a 100755 --- a/src/i965_post_processing.c +++ b/src/i965_post_processing.c @@ -6034,7 +6034,8 @@ i965_proc_picture(VADriverContextP ctx, VA_RT_FORMAT_YUV420, 1, &out_surface_id); - assert(status == VA_STATUS_SUCCESS); + if (status != VA_STATUS_SUCCESS) + goto error; tmp_surfaces[num_tmp_surfaces++] = out_surface_id; obj_surface = SURFACE(out_surface_id); assert(obj_surface); @@ -6053,7 +6054,8 @@ i965_proc_picture(VADriverContextP ctx, &src_rect, &dst_surface, &dst_rect); - assert(status == VA_STATUS_SUCCESS); + if (status != VA_STATUS_SUCCESS) + goto error; src_surface.base = (struct object_base *)obj_surface; src_surface.type = I965_SURFACE_TYPE_SURFACE;