summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Baergen <joshuabaergen@gentoo.org>2006-04-12 02:49:02 +0000
committerJoshua Baergen <joshuabaergen@gentoo.org>2006-04-12 02:49:02 +0000
commit79cc2a297738fe750d5f3fa85e3dfec121ce3f99 (patch)
treec1019ae802b62354268d93deaf17272abcce1fd7 /media-libs/mesa/files
parentcross-compile patch (diff)
downloadgentoo-2-79cc2a297738fe750d5f3fa85e3dfec121ce3f99.tar.gz
gentoo-2-79cc2a297738fe750d5f3fa85e3dfec121ce3f99.tar.bz2
gentoo-2-79cc2a297738fe750d5f3fa85e3dfec121ce3f99.zip
Add some upstream fixes that re-order GL context destruction in the ati
drivers to avoid a possible NULL dereference. I've also restored the entire ChangeLog, as it appears to have been truncated during Diego's last commit. (Portage version: 2.1_pre7-r5)
Diffstat (limited to 'media-libs/mesa/files')
-rw-r--r--media-libs/mesa/files/6.5-re-order-context-destruction.patch72
-rw-r--r--media-libs/mesa/files/digest-mesa-6.5-r13
2 files changed, 75 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 000000000000..a882d07a6877
--- /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);
+
diff --git a/media-libs/mesa/files/digest-mesa-6.5-r1 b/media-libs/mesa/files/digest-mesa-6.5-r1
new file mode 100644
index 000000000000..79639c7ca0fc
--- /dev/null
+++ b/media-libs/mesa/files/digest-mesa-6.5-r1
@@ -0,0 +1,3 @@
+MD5 61beda590bfc5b4a12e979d5f2d70d7a MesaLib-6.5.tar.bz2 3062363
+RMD160 6006bfdfed8a2425059c31ee699b5aca4d5f57cd MesaLib-6.5.tar.bz2 3062363
+SHA256 dcacf4c18af89b57e66dc7ba39e24c3b74ff6f83b8745bcc1390170a4190eebd MesaLib-6.5.tar.bz2 3062363