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.
This commit is contained in:
Brian 2007-09-11 10:58:15 -06:00
parent 791f12880f
commit 2259f81cf7

View file

@ -6,7 +6,7 @@
/*
* Mesa 3-D graphics library
* Version: 7.0
* Version: 7.0.2
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@ -1462,8 +1462,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");
@ -1488,13 +1486,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 */
}