Mesa (master): mesa: Use array object constructor.

Mathias Fröhlich frohlich at kemper.freedesktop.org
Wed Apr 18 17:54:26 UTC 2012


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

Author: Mathias Fröhlich <Mathias.Froehlich at web.de>
Date:   Wed Nov  2 19:54:26 2011 +0100

mesa: Use array object constructor.

This change uses the array object factory for gl_array_objects. This
prevents crashes when deriving from gl_array_object.

Reviewed-by: Brian Paul <brianp at vmware.com>
Signed-off-by: Mathias Froehlich <Mathias.Froehlich at web.de>

---

 src/mesa/main/context.c |    3 ++-
 src/mesa/main/varray.c  |    2 +-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c
index 51b0241..a506981 100644
--- a/src/mesa/main/context.c
+++ b/src/mesa/main/context.c
@@ -1118,7 +1118,8 @@ _mesa_free_context_data( struct gl_context *ctx )
    _mesa_free_varray_data(ctx);
    _mesa_free_transform_feedback(ctx);
 
-   _mesa_delete_array_object(ctx, ctx->Array.DefaultArrayObj);
+   _mesa_reference_array_object(ctx, &ctx->Array.ArrayObj, NULL);
+   _mesa_reference_array_object(ctx, &ctx->Array.DefaultArrayObj, NULL);
 
 #if FEATURE_ARB_pixel_buffer_object
    _mesa_reference_buffer_object(ctx, &ctx->Pack.BufferObj, NULL);
diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c
index a402c7b..1c14843 100644
--- a/src/mesa/main/varray.c
+++ b/src/mesa/main/varray.c
@@ -1221,7 +1221,7 @@ _mesa_print_arrays(struct gl_context *ctx)
 void 
 _mesa_init_varray(struct gl_context *ctx)
 {
-   ctx->Array.DefaultArrayObj = _mesa_new_array_object(ctx, 0);
+   ctx->Array.DefaultArrayObj = ctx->Driver.NewArrayObject(ctx, 0);
    _mesa_reference_array_object(ctx, &ctx->Array.ArrayObj,
                                 ctx->Array.DefaultArrayObj);
    ctx->Array.ActiveTexture = 0;   /* GL_ARB_multitexture */




More information about the mesa-commit mailing list