Mesa (master): wgl: Cleanup framebuffer destruction logic.

Brian Paul brianp at kemper.freedesktop.org
Mon Jun 1 21:09:04 UTC 2009


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

Author: José Fonseca <jfonseca at vmware.com>
Date:   Sun May 31 17:16:26 2009 -0700

wgl: Cleanup framebuffer destruction logic.

---

 .../state_trackers/wgl/shared/stw_framebuffer.c    |   13 ++++---------
 1 files changed, 4 insertions(+), 9 deletions(-)

diff --git a/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c b/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c
index 030a155..768cef3 100644
--- a/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c
+++ b/src/gallium/state_trackers/wgl/shared/stw_framebuffer.c
@@ -213,23 +213,18 @@ stw_framebuffer_resize(
 
 
 static INLINE void
-stw_framebuffer_destroy(
+stw_framebuffer_destroy_locked(
    struct stw_framebuffer *fb )
 {
    struct stw_framebuffer **link;
 
-   pipe_mutex_lock( stw_dev->mutex );
-
    link = &stw_dev->fb_head;
-   while (link && *link != fb)
+   while (*link != fb)
       link = &(*link)->next;
    assert(*link);
-   if (link)
-      *link = fb->next;
+   *link = fb->next;
    fb->next = NULL;
 
-   pipe_mutex_unlock( stw_dev->mutex );
-
    st_unreference_framebuffer(fb->stfb);
    
    pipe_mutex_destroy( fb->mutex );
@@ -249,7 +244,7 @@ stw_framebuffer_cleanup( void )
    fb = stw_dev->fb_head;
    while (fb) {
       next = fb->next;
-      stw_framebuffer_destroy(fb);
+      stw_framebuffer_destroy_locked(fb);
       fb = next;
    }
    stw_dev->fb_head = NULL;




More information about the mesa-commit mailing list