From: Christian König Date: Wed, 25 Jan 2012 12:58:57 +0000 (+0100) Subject: vl: add VL_MAX_SURFACES define X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=900168284615e61e13b6511c655b29e9ddb025b3;p=mesa.git vl: add VL_MAX_SURFACES define Signed-off-by: Christian König --- diff --git a/src/gallium/auxiliary/vl/vl_defines.h b/src/gallium/auxiliary/vl/vl_defines.h index ffbc653e4fc..6f20706c647 100644 --- a/src/gallium/auxiliary/vl/vl_defines.h +++ b/src/gallium/auxiliary/vl/vl_defines.h @@ -36,6 +36,7 @@ #define VL_BLOCK_HEIGHT 8 #define VL_NUM_COMPONENTS 3 +#define VL_MAX_SURFACES (VL_NUM_COMPONENTS * 2) #define VL_MAX_REF_FRAMES 2 #endif diff --git a/src/gallium/auxiliary/vl/vl_mpeg12_decoder.c b/src/gallium/auxiliary/vl/vl_mpeg12_decoder.c index 78dfd698670..31d96fd316c 100644 --- a/src/gallium/auxiliary/vl/vl_mpeg12_decoder.c +++ b/src/gallium/auxiliary/vl/vl_mpeg12_decoder.c @@ -683,6 +683,7 @@ vl_mpeg12_end_frame(struct pipe_video_decoder *decoder, unsigned nr_components; assert(dec && target && picture); + assert(!target->interlaced); buf = vl_mpeg12_get_decode_buffer(dec, target); @@ -734,7 +735,7 @@ vl_mpeg12_end_frame(struct pipe_video_decoder *decoder, plane_order = vl_video_buffer_plane_order(target->buffer_format); mc_source_sv = dec->mc_source->get_sampler_view_planes(dec->mc_source); - for (i = 0, component = 0; i < VL_NUM_COMPONENTS; ++i) { + for (i = 0, component = 0; component < VL_NUM_COMPONENTS; ++i) { if (!target_surfaces[i]) continue; nr_components = util_format_get_nr_components(target_surfaces[i]->texture->format); diff --git a/src/gallium/auxiliary/vl/vl_video_buffer.h b/src/gallium/auxiliary/vl/vl_video_buffer.h index 16c2e31ce55..6e2f8b8291a 100644 --- a/src/gallium/auxiliary/vl/vl_video_buffer.h +++ b/src/gallium/auxiliary/vl/vl_video_buffer.h @@ -45,7 +45,7 @@ struct vl_video_buffer struct pipe_resource *resources[VL_NUM_COMPONENTS]; struct pipe_sampler_view *sampler_view_planes[VL_NUM_COMPONENTS]; struct pipe_sampler_view *sampler_view_components[VL_NUM_COMPONENTS]; - struct pipe_surface *surfaces[VL_NUM_COMPONENTS * 2]; + struct pipe_surface *surfaces[VL_MAX_SURFACES]; }; /**