This fixes surface leak when no winsys buffers are bound.
---
 src/mesa/main/context.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c
index 34da16b..04ef4d5 100644
--- a/src/mesa/main/context.c
+++ b/src/mesa/main/context.c
@@ -1765,6 +1765,10 @@ _mesa_make_current( struct gl_context *newCtx,
 
          check_init_viewport(newCtx, drawBuffer->Width, drawBuffer->Height);
       }
+      else {
+         _mesa_reference_framebuffer(&newCtx->WinSysDrawBuffer, NULL);
+         _mesa_reference_framebuffer(&newCtx->WinSysReadBuffer, NULL);
+      }
 
       if (newCtx->FirstTimeCurrent) {
          handle_first_current(newCtx);
-- 
1.8.5.6

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to