Mesa (master): st/wgl: Release stw_framebuffer:: mutex after pbuffer creation.
Jose Fonseca
jrfonseca at kemper.freedesktop.org
Thu Oct 13 18:57:20 UTC 2011
Module: Mesa
Branch: master
Commit: 7b09a9428203db5c0c46b9226ba1d5a06f17b2d8
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=7b09a9428203db5c0c46b9226ba1d5a06f17b2d8
Author: Mathias Froehlich <Mathias.Froehlich at web.de>
Date: Thu Oct 13 11:32:35 2011 +0200
st/wgl: Release stw_framebuffer::mutex after pbuffer creation.
This change releases the stw_framebuffer::mutex past creation of
the pbuffer stw_framebuffer. Without this change the pbuffers
lock is never released. Since on win32 mutexes are recursive, this
does not hurt as long as all actions on a context are done from
the same thread. But if, for example, context creation happens in
a different thread than usage, every access to the context will
block for ever.
Signed-off-by: José Fonseca <jfonseca at vmware.com>
---
src/gallium/state_trackers/wgl/stw_ext_pbuffer.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c b/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c
index c7273f2..252d07a 100644
--- a/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c
+++ b/src/gallium/state_trackers/wgl/stw_ext_pbuffer.c
@@ -209,6 +209,8 @@ wglCreatePbufferARB(HDC _hDC,
fb = stw_framebuffer_create(hDC, iPixelFormat);
if (!fb) {
SetLastError(ERROR_NO_SYSTEM_RESOURCES);
+ } else {
+ stw_framebuffer_release(fb);
}
return (HPBUFFERARB)fb;
More information about the mesa-commit
mailing list