[Mesa-dev] [PATCH] st/va: delay calling begin_frame until we have all parameters
Nayan Deshmukh
nayan26deshmukh at gmail.com
Fri Jan 13 13:17:58 UTC 2017
Hi Andy,
Please test this patch for regressions.
Cheers,
Nayan
On Fri, Jan 13, 2017 at 6:45 PM, Nayan Deshmukh <nayan26deshmukh at gmail.com>
wrote:
> If begin_frame is called before setting intra_matrix and
> non_intra_matrix it leads to segmentation faults when
> vl_mpeg12_decoder.c is used.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92634
> Signed-off-by: Nayan Deshmukh <nayan26deshmukh at gmail.com>
> ---
> src/gallium/state_trackers/va/picture.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/src/gallium/state_trackers/va/picture.c
> b/src/gallium/state_trackers/va/picture.c
> index b5b9a83..dc7121c 100644
> --- a/src/gallium/state_trackers/va/picture.c
> +++ b/src/gallium/state_trackers/va/picture.c
> @@ -178,9 +178,6 @@ handlePictureParameterBuffer(vlVaDriver *drv,
> vlVaContext *context, vlVaBuffer *
>
> if (!context->decoder)
> return VA_STATUS_ERROR_ALLOCATION_FAILED;
> -
> - context->decoder->begin_frame(context->decoder, context->target,
> - &context->desc.base);
> }
>
> return vaStatus;
> @@ -310,6 +307,9 @@ handleVASliceDataBufferType(vlVaContext *context,
> vlVaBuffer *buf)
> buffers[num_buffers] = buf->data;
> sizes[num_buffers] = buf->size;
> ++num_buffers;
> +
> + context->decoder->begin_frame(context->decoder, context->target,
> + &context->desc.base);
> context->decoder->decode_bitstream(context->decoder, context->target,
> &context->desc.base,
> num_buffers, (const void * const*)buffers, sizes);
> }
> --
> 2.9.3
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170113/b774e78b/attachment.html>
More information about the mesa-dev
mailing list