[Mesa-dev] [PATCH] st/va: restore old buffer format on error
Christian König
christian.koenig at amd.com
Tue May 31 07:43:01 UTC 2016
Am 31.05.2016 um 03:24 schrieb Eric Engestrom:
> CoverityID: 1337953
>
> Signed-off-by: Eric Engestrom <eric at engestrom.ch>
> ---
>
> Note that I do not know this code at all; I'm blindly following Coverity's advice on this one :]
Well and that is completely nonsense. The buffer was already reallocated
when this error happens and so resetting the template to the original
value is incorrect and actually rather dangerous.
Why does Coverity things that we should add this? And how can we fix this?
Regards,
Christian.
>
> ---
> src/gallium/state_trackers/va/image.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/src/gallium/state_trackers/va/image.c b/src/gallium/state_trackers/va/image.c
> index 92d014c..8cfe17a 100644
> --- a/src/gallium/state_trackers/va/image.c
> +++ b/src/gallium/state_trackers/va/image.c
> @@ -490,6 +490,7 @@ vlVaPutImage(VADriverContextP ctx, VASurfaceID surface, VAImageID image,
>
> views = surf->buffer->get_sampler_view_planes(surf->buffer);
> if (!views) {
> + surf->templat.buffer_format = old_surf_format;
> pipe_mutex_unlock(drv->mutex);
> return VA_STATUS_ERROR_OPERATION_FAILED;
> }
More information about the mesa-dev
mailing list