[Mesa-dev] [PATCH 2/2] intel: Use designated initializers for DRI extension structs
Matt Turner
mattst88 at gmail.com
Mon Nov 19 14:14:58 PST 2012
On Mon, Nov 19, 2012 at 1:53 PM, Chad Versace
<chad.versace at linux.intel.com> wrote:
> All Intel code is compiled with -std=c99. There is no excuse to not use
> designated initializers.
>
> As a nice benefit, the code is now more friendly to grep. Without
> designated initializers, psychic prowess is required to find the
> initialization of DRI extension function pointers with grep. I have
> observed several people, when they first encounter the DRI code, fail at
> statically chasing the DRI function pointers due to this problem.
>
> Signed-off-by: Chad Versace <chad.versace at linux.intel.com>
> ---
> src/mesa/drivers/dri/intel/intel_screen.c | 36 +++++++++++++++++--------------
> 1 file changed, 20 insertions(+), 16 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/intel/intel_screen.c b/src/mesa/drivers/dri/intel/intel_screen.c
> index 0194804..4e2742f 100644
> --- a/src/mesa/drivers/dri/intel/intel_screen.c
> +++ b/src/mesa/drivers/dri/intel/intel_screen.c
> @@ -158,9 +158,11 @@ aub_dump_bmp(struct gl_context *ctx)
> }
>
> static const __DRItexBufferExtension intelTexBufferExtension = {
> - { __DRI_TEX_BUFFER, __DRI_TEX_BUFFER_VERSION },
> - intelSetTexBuffer,
> - intelSetTexBuffer2,
> + .base = { __DRI_TEX_BUFFER, __DRI_TEX_BUFFER_VERSION },
> +
> + .setTexBuffer = intelSetTexBuffer,
> + .setTexBuffer2 = intelSetTexBuffer2,
> + .releaseTexBuffer = NULL,
> };
>
> static void
> @@ -186,9 +188,10 @@ intelDRI2Flush(__DRIdrawable *drawable)
> }
>
> static const struct __DRI2flushExtensionRec intelFlushExtension = {
> - { __DRI2_FLUSH, __DRI2_FLUSH_VERSION },
> - intelDRI2Flush,
> - dri2InvalidateDrawable,
> + .base = { __DRI2_FLUSH, __DRI2_FLUSH_VERSION },
> +
> + .flush = intelDRI2Flush,
> + .invalidate = dri2InvalidateDrawable,
> };
>
> static struct intel_image_format intel_image_formats[] = {
> @@ -574,16 +577,17 @@ intel_from_planar(__DRIimage *parent, int plane, void *loaderPrivate)
> }
>
> static struct __DRIimageExtensionRec intelImageExtension = {
> - { __DRI_IMAGE, 5 },
> - intel_create_image_from_name,
> - intel_create_image_from_renderbuffer,
> - intel_destroy_image,
> - intel_create_image,
> - intel_query_image,
> - intel_dup_image,
> - intel_validate_usage,
> - intel_create_image_from_names,
> - intel_from_planar
> + .base = { __DRI_IMAGE, 5 },
> +
> + .createImageFromName = intel_create_image_from_name,
> + .createImageFromRenderbuffer = intel_create_image_from_renderbuffer,
> + .destroyImage = intel_destroy_image,
> + .createImage = intel_create_image,
> + .queryImage = intel_query_image,
> + .dupImage = intel_dup_image,
> + .validateUsage = intel_validate_usage,
> + .createImageFromNames = intel_create_image_from_names,
> + .fromPlanar = intel_from_planar
> };
>
> static const __DRIextension *intelScreenExtensions[] = {
> --
> 1.7.11.7
Reviewed-by: Matt Turner <mattst88 at gmail.com>
More information about the mesa-dev
mailing list