From: Brian Date: Tue, 11 Sep 2007 16:56:35 +0000 (-0600) Subject: In _mesa_make_current(), don't unbind FBOs from the old context. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a614877592e8526d997242ce336fb455dd3f5bdb;p=mesa.git In _mesa_make_current(), don't unbind FBOs from the old context. This fixes the X server crash reported by KeithP on Aug 29. The old context's FBOs will be unreferenced during context destruction so there's no memleak with this change. --- diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index d988ef2d215..08db12b1b67 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -1499,8 +1499,6 @@ void _mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer, GLframebuffer *readBuffer ) { - GET_CURRENT_CONTEXT(oldCtx); - if (MESA_VERBOSE & VERBOSE_API) _mesa_debug(newCtx, "_mesa_make_current()\n"); @@ -1525,13 +1523,6 @@ _mesa_make_current( GLcontext *newCtx, GLframebuffer *drawBuffer, _glapi_set_context((void *) newCtx); ASSERT(_mesa_get_current_context() == newCtx); - if (oldCtx) { - _mesa_unreference_framebuffer(&oldCtx->WinSysDrawBuffer); - _mesa_unreference_framebuffer(&oldCtx->WinSysReadBuffer); - _mesa_unreference_framebuffer(&oldCtx->DrawBuffer); - _mesa_unreference_framebuffer(&oldCtx->ReadBuffer); - } - if (!newCtx) { _glapi_set_dispatch(NULL); /* none current */ }