diff options
Diffstat (limited to 'media-libs/mesa/files/6.5-re-order-context-destruction.patch')
-rw-r--r-- | media-libs/mesa/files/6.5-re-order-context-destruction.patch | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/media-libs/mesa/files/6.5-re-order-context-destruction.patch b/media-libs/mesa/files/6.5-re-order-context-destruction.patch new file mode 100644 index 0000000..a882d07 --- /dev/null +++ b/media-libs/mesa/files/6.5-re-order-context-destruction.patch @@ -0,0 +1,72 @@ +--- src/mesa/drivers/dri/r128/r128_context.c 2006/02/03 13:29:11 1.23 ++++ src/mesa/drivers/dri/r128/r128_context.c 2006/04/09 17:48:28 1.24 +@@ -296,10 +296,6 @@ + _ac_DestroyContext( rmesa->glCtx ); + _swrast_DestroyContext( rmesa->glCtx ); + +- /* free the Mesa context */ +- rmesa->glCtx->DriverCtx = NULL; +- _mesa_destroy_context(rmesa->glCtx); +- + if ( release_texture_heaps ) { + /* This share group is about to go away, free our private + * texture object data. +@@ -314,6 +310,10 @@ + assert( is_empty_list( & rmesa->swapped ) ); + } + ++ /* free the Mesa context */ ++ rmesa->glCtx->DriverCtx = NULL; ++ _mesa_destroy_context(rmesa->glCtx); ++ + /* free the option cache */ + driDestroyOptionCache (&rmesa->optionCache); + +--- src/mesa/drivers/dri/r200/r200_context.c 2006/04/04 11:04:30 1.58 ++++ src/mesa/drivers/dri/r200/r200_context.c 2006/04/09 17:48:28 1.59 +@@ -590,10 +590,6 @@ + r200VtxfmtDestroy( rmesa->glCtx ); + } + +- /* free the Mesa context */ +- rmesa->glCtx->DriverCtx = NULL; +- _mesa_destroy_context( rmesa->glCtx ); +- + if (rmesa->state.scissor.pClipRects) { + FREE(rmesa->state.scissor.pClipRects); + rmesa->state.scissor.pClipRects = NULL; +@@ -613,6 +609,10 @@ + assert( is_empty_list( & rmesa->swapped ) ); + } + ++ /* free the Mesa context */ ++ rmesa->glCtx->DriverCtx = NULL; ++ _mesa_destroy_context( rmesa->glCtx ); ++ + /* free the option cache */ + driDestroyOptionCache (&rmesa->optionCache); + +--- src/mesa/drivers/dri/radeon/radeon_context.c 2006/04/04 11:04:30 1.51 ++++ src/mesa/drivers/dri/radeon/radeon_context.c 2006/04/09 17:48:28 1.52 +@@ -521,10 +521,6 @@ + radeonVtxfmtDestroy( rmesa->glCtx ); + } + +- /* free the Mesa context */ +- rmesa->glCtx->DriverCtx = NULL; +- _mesa_destroy_context( rmesa->glCtx ); +- + _mesa_vector4f_free( &rmesa->tcl.ObjClean ); + + if (rmesa->state.scissor.pClipRects) { +@@ -546,6 +542,10 @@ + assert( is_empty_list( & rmesa->swapped ) ); + } + ++ /* free the Mesa context */ ++ rmesa->glCtx->DriverCtx = NULL; ++ _mesa_destroy_context( rmesa->glCtx ); ++ + /* free the option cache */ + driDestroyOptionCache (&rmesa->optionCache); + |