Mesa (master): egl_dri: rework dri extension handling

Emil Velikov evelikov at kemper.freedesktop.org
Mon Apr 28 18:12:56 UTC 2014


Module: Mesa
Branch: master
Commit: 5f280d0c4416627810de73a6c68c422453d2b7d9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f280d0c4416627810de73a6c68c422453d2b7d9

Author: Emil Velikov <emil.l.velikov at gmail.com>
Date:   Wed Feb 12 20:13:15 2014 +0000

egl_dri: rework dri extension handling

Use designated initialisers, and store the extensions pointers as const.

The loader extensions __DRIdri2LoaderExtension and __DRIswrastLoaderExtension
are setup by the platform backends so they should not be constified.

Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
Reviewed-by: Kristian Høgsberg <krh at bitplanet.net>

---

 src/egl/drivers/dri2/egl_dri2.c |    7 ++++---
 src/egl/drivers/dri2/egl_dri2.h |   16 ++++++++--------
 2 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c
index 81a3542..380bd7b 100644
--- a/src/egl/drivers/dri2/egl_dri2.c
+++ b/src/egl/drivers/dri2/egl_dri2.c
@@ -52,7 +52,7 @@
 #include "egl_dri2.h"
 
 const __DRIuseInvalidateExtension use_invalidate = {
-   { __DRI_USE_INVALIDATE, 1 }
+   .base = { __DRI_USE_INVALIDATE, 1 }
 };
 
 EGLint dri2_to_egl_attribute_map[] = {
@@ -299,8 +299,9 @@ dri2_lookup_egl_image(__DRIscreen *screen, void *image, void *data)
 }
 
 const __DRIimageLookupExtension image_lookup_extension = {
-   { __DRI_IMAGE_LOOKUP, 1 },
-   dri2_lookup_egl_image
+   .base = { __DRI_IMAGE_LOOKUP, 1 },
+
+   .lookupEGLImage       = dri2_lookup_egl_image
 };
 
 static const char dri_driver_path[] = DEFAULT_DRIVER_DIR;
diff --git a/src/egl/drivers/dri2/egl_dri2.h b/src/egl/drivers/dri2/egl_dri2.h
index e62e265..44d6d74 100644
--- a/src/egl/drivers/dri2/egl_dri2.h
+++ b/src/egl/drivers/dri2/egl_dri2.h
@@ -150,14 +150,14 @@ struct dri2_egl_display
    int                       own_dri_screen;
    const __DRIconfig       **driver_configs;
    void                     *driver;
-   __DRIcoreExtension       *core;
-   __DRIdri2Extension       *dri2;
-   __DRIswrastExtension     *swrast;
-   __DRI2flushExtension     *flush;
-   __DRItexBufferExtension  *tex_buffer;
-   __DRIimageExtension      *image;
-   __DRIrobustnessExtension *robustness;
-   __DRI2configQueryExtension *config;
+   const __DRIcoreExtension       *core;
+   const __DRIdri2Extension       *dri2;
+   const __DRIswrastExtension     *swrast;
+   const __DRI2flushExtension     *flush;
+   const __DRItexBufferExtension  *tex_buffer;
+   const __DRIimageExtension      *image;
+   const __DRIrobustnessExtension *robustness;
+   const __DRI2configQueryExtension *config;
    int                       fd;
 
    int                       own_device;




More information about the mesa-commit mailing list