Swrast doesn't really know whether a Framebuffer object is bound
Submitted by Benoit Jacob
Assigned to mes..@..op.org
Description
This comes from https://bugzilla.mozilla.org/show_bug.cgi?id=659842#c64
This seems to be a swrast bug, but I didn't find the bugzilla component for it.
I have code like this:
glBindFramebuffer(...some arguments...); glFramebufferRenderbuffer(...some arguments...); GLenum error = glGetError(); if (error != GL_NO_ERROR) exit(1); // no GL error at this point GLint framebuffer; glGetIntegerv(LOCAL_GL_FRAMEBUFFER_BINDING, &framebuffer); if (!framebuffer) printf("WTF???\n");
The bug is that the WTF line is reached. Since glBindFramebuffer and glFramebufferRenderbuffer succeeded, for sure we have a FBO bound. So it's a bug that glGetIntegerv(LOCAL_GL_FRAMEBUFFER_BINDING, &result) returns 0.
This is only confirmed with the swrast driver.