This functionality has been a real pain to maintain. AFAIK it is only used internally. It also puts a limiting constraint on GrContext create time. We can't change the bound FBO or else this will fail: GrContext* ctx = GrContext::Create(...) SkGpuDevice* dev = new SkGpuDevice(SkGpuDevice::Current3DAPIRenderTarget()); This constraint has made us get and restore the bound during fbo create. Now that we are using shared IDs in Chrome this hurts startup time more. http://codereview.appspot.com/4928041/diff/1/gpu/include/GrRenderTarget.h File gpu/include/GrRenderTarget.h (left): http://codereview.appspot.com/4928041/diff/1/gpu/include/GrRenderTarget.h#old... gpu/include/GrRenderTarget.h:65: int config() const { return fConfig; } D'oh! http://codereview.appspot.com/4928041/diff/1/gpu/src/GrGpuGLShaders.cpp File gpu/src/GrGpuGLShaders.cpp (left): http://codereview.appspot.com/4928041/diff/1/gpu/src/GrGpuGLShaders.cpp#oldco... gpu/src/GrGpuGLShaders.cpp:243: resetContext(); I happened to notice this along the way. We don't need it. We mark the context dirty in the base class cons and will call resetContext at the first draw.
LGTM
Closed with r2144.