diff options
author | Mathias Froehlich <[email protected]> | 2011-10-13 11:32:35 +0200 |
---|---|---|
committer | José Fonseca <[email protected]> | 2011-10-13 19:53:13 +0100 |
commit | 7b09a9428203db5c0c46b9226ba1d5a06f17b2d8 (patch) | |
tree | 4d66470d6b988f370ea45f2788044e3251088063 /src/gallium/state_trackers/wgl | |
parent | 349e4db99e938f8ee8826b0d27e490c66a1e8356 (diff) |
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 <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/wgl')
-rw-r--r-- | 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 c7273f26545..252d07a90cc 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; |