Mesa (master): darwin: Unlock our mutex before destroying it

Jeremy Huddleston jeremyhu at kemper.freedesktop.org
Thu May 17 01:59:51 UTC 2012


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

Author: Jeremy Huddleston <jeremyhu at apple.com>
Date:   Thu May 10 18:56:50 2012 -0700

darwin: Unlock our mutex before destroying it

http://xquartz.macosforge.org/trac/ticket/575

Signed-off-by: Jeremy Huddleston <jeremyhu at apple.com>

---

 src/glx/apple/apple_glx_drawable.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/glx/apple/apple_glx_drawable.c b/src/glx/apple/apple_glx_drawable.c
index 3f84d56..b261a55 100644
--- a/src/glx/apple/apple_glx_drawable.c
+++ b/src/glx/apple/apple_glx_drawable.c
@@ -174,6 +174,9 @@ destroy_drawable(struct apple_glx_drawable *d)
 
    apple_glx_diagnostic("%s: freeing %p\n", __func__, (void *) d);
 
+   /* Stupid recursive locks */
+   while (pthread_mutex_unlock(&d->mutex) == 0);
+
    err = pthread_mutex_destroy(&d->mutex);
    if (err) {
       fprintf(stderr, "pthread_mutex_destroy error: %s\n", strerror(err));




More information about the mesa-commit mailing list