From f77740f14b9057de09e61e1abf086f08a68c5a1b Mon Sep 17 00:00:00 2001 From: Timothy Arceri Date: Wed, 7 Jun 2017 12:19:13 +1000 Subject: mesa: stop passing state bitfield to UpdateState() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The code comment which seems to have been added in cab974cf6c2db (from year 2000) says: "Set ctx->NewState to zero to avoid recursion if Driver.UpdateState() has to call FLUSH_VERTICES(). (fixed?)" As far as I can tell nothing in any of the UpdateState() calls should cause it to be called recursively. V2: add a wrapper around the osmesa update function so it can still be used internally. Reviewed-by: Brian Paul Reviewed-by: Samuel Pitoiset Reviewed-by: Marek Olšák --- src/mesa/drivers/x11/xm_dd.c | 5 +++-- src/mesa/drivers/x11/xmesaP.h | 4 ---- 2 files changed, 3 insertions(+), 6 deletions(-) (limited to 'src/mesa/drivers/x11') diff --git a/src/mesa/drivers/x11/xm_dd.c b/src/mesa/drivers/x11/xm_dd.c index cd5809e070e..e06831ca777 100644 --- a/src/mesa/drivers/x11/xm_dd.c +++ b/src/mesa/drivers/x11/xm_dd.c @@ -678,9 +678,10 @@ enable( struct gl_context *ctx, GLenum pname, GLboolean state ) * Called when the driver should update its state, based on the new_state * flags. */ -void -xmesa_update_state( struct gl_context *ctx, GLbitfield new_state ) +static void +xmesa_update_state(struct gl_context *ctx) { + GLbitfield new_state = ctx->NewState; const XMesaContext xmesa = XMESA_CONTEXT(ctx); /* Propagate statechange information to swrast and swrast_setup diff --git a/src/mesa/drivers/x11/xmesaP.h b/src/mesa/drivers/x11/xmesaP.h index 9320442f46a..ff3ddc4ddd0 100644 --- a/src/mesa/drivers/x11/xmesaP.h +++ b/src/mesa/drivers/x11/xmesaP.h @@ -353,10 +353,6 @@ extern void xmesa_init_driver_functions( XMesaVisual xmvisual, struct dd_function_table *driver ); -extern void -xmesa_update_state( struct gl_context *ctx, GLbitfield new_state ); - - extern void xmesa_MapRenderbuffer(struct gl_context *ctx, struct gl_renderbuffer *rb, -- cgit v1.2.3