Browse Source

mesa: fix regression from b4bb668020

Pending commands to the previous context aren't flushed since commit b4bb668

Reported-by: Oleksiy Krivoshey <oleksiyk@gmail.com>
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
tags/android-x86-2.2
Xiang, Haihao 14 years ago
parent
commit
93102b4cd8
1 changed files with 7 additions and 0 deletions
  1. 7
    0
      src/mesa/main/context.c

+ 7
- 0
src/mesa/main/context.c View File

@@ -1399,6 +1399,8 @@ _mesa_make_current( struct gl_context *newCtx,
struct gl_framebuffer *drawBuffer,
struct gl_framebuffer *readBuffer )
{
GET_CURRENT_CONTEXT(curCtx);

if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(newCtx, "_mesa_make_current()\n");

@@ -1419,6 +1421,11 @@ _mesa_make_current( struct gl_context *newCtx,
}
}

if (curCtx &&
(curCtx->WinSysDrawBuffer || curCtx->WinSysReadBuffer) && /* make sure this context is valid for flushing */
curCtx != newCtx)
_mesa_flush(curCtx);

/* We used to call _glapi_check_multithread() here. Now do it in drivers */
_glapi_set_context((void *) newCtx);
ASSERT(_mesa_get_current_context() == newCtx);

Loading…
Cancel
Save