Commit 7d1f5c60 by Jamie Madill Committed by Commit Bot

Sync dirty objects before Context dirty bits.

This allows the dirty objects to notify the context if something needs to be communicated down to the ContextImpl. In this case it means a dirty Texture can notify the Context that it needs to re-apply texture bindings. BUG=angleproject:1387 Change-Id: I162115e51112d1c27c0dab621d1b3d14446af96d Reviewed-on: https://chromium-review.googlesource.com/648052Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org> Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
parent 8693bdb8
......@@ -2765,19 +2765,19 @@ Error Context::prepareForDraw(GLenum drawMode)
void Context::syncRendererState()
{
mGLState.syncDirtyObjects(this);
const State::DirtyBits &dirtyBits = mGLState.getDirtyBits();
mImplementation->syncState(this, dirtyBits);
mGLState.clearDirtyBits();
mGLState.syncDirtyObjects(this);
}
void Context::syncRendererState(const State::DirtyBits &bitMask,
const State::DirtyObjects &objectMask)
{
mGLState.syncDirtyObjects(this, objectMask);
const State::DirtyBits &dirtyBits = (mGLState.getDirtyBits() & bitMask);
mImplementation->syncState(this, dirtyBits);
mGLState.clearDirtyBits(dirtyBits);
mGLState.syncDirtyObjects(this, objectMask);
}
void Context::blitFramebuffer(GLint srcX0,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment