wined3d: Only invalidate state for the current context in wined3d_buffer_unmap().

This commit is contained in:
Henri Verbeet 2011-07-28 22:27:51 +02:00 committed by Alexandre Julliard
parent 701aabb141
commit b06e32184b
1 changed files with 4 additions and 3 deletions

View File

@ -1136,12 +1136,13 @@ void CDECL wined3d_buffer_unmap(struct wined3d_buffer *buffer)
const struct wined3d_gl_info *gl_info; const struct wined3d_gl_info *gl_info;
struct wined3d_context *context; struct wined3d_context *context;
if (buffer->buffer_type_hint == GL_ELEMENT_ARRAY_BUFFER_ARB)
device_invalidate_state(device, STATE_INDEXBUFFER);
context = context_acquire(device, NULL); context = context_acquire(device, NULL);
gl_info = context->gl_info; gl_info = context->gl_info;
ENTER_GL(); ENTER_GL();
if (buffer->buffer_type_hint == GL_ELEMENT_ARRAY_BUFFER_ARB)
context_invalidate_state(context, STATE_INDEXBUFFER);
GL_EXTCALL(glBindBufferARB(buffer->buffer_type_hint, buffer->buffer_object)); GL_EXTCALL(glBindBufferARB(buffer->buffer_type_hint, buffer->buffer_object));
if (gl_info->supported[ARB_MAP_BUFFER_RANGE]) if (gl_info->supported[ARB_MAP_BUFFER_RANGE])