Reviewed-by: Iago Toral Quiroga <ito...@igalia.com> On Tue, 2016-03-08 at 20:50 -0800, Kenneth Graunke wrote: > intel_alloc_private_renderbuffer_storage did: > > rb->_BaseFormat = _mesa_base_fbo_format(ctx, internalFormat); > > Unfortunately, internalFormat was usually an unsized format (such as > GL_DEPTH_COMPONENT). In OpenGL ES, _mesa_base_fbo_format() refuses to > accept unsized formats, and returns 0 rather than a real base format. > > This meant that we ended up with a completely bogus rb->_BaseFormat for > window system buffers on OpenGL ES. All other renderbuffer allocation > functions in intel_fbo.c instead use the mesa_format, and do: > > rb->_BaseFormat = _mesa_get_format_base_format(...); > > We can do likewise, using rb->Format. This appears to work just fine. > > dEQP-GLES3.functional.state_query.fbo.framebuffer_attachment_x_size_initial > failed, as it tried to perform a GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE query > on the window system depth buffer. That query relies on a proper > rb->_BaseFormat being set, so it broke because rb->_BaseFormat was 0 due > to the above bug. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=94458 > Signed-off-by: Kenneth Graunke <kenn...@whitecape.org> > --- > src/mesa/drivers/dri/i965/intel_fbo.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/src/mesa/drivers/dri/i965/intel_fbo.c > b/src/mesa/drivers/dri/i965/intel_fbo.c > index 3a4a53a..b7b6796 100644 > --- a/src/mesa/drivers/dri/i965/intel_fbo.c > +++ b/src/mesa/drivers/dri/i965/intel_fbo.c > @@ -289,7 +289,7 @@ intel_alloc_private_renderbuffer_storage(struct > gl_context * ctx, struct gl_rend > rb->NumSamples = intel_quantize_num_samples(screen, rb->NumSamples); > rb->Width = width; > rb->Height = height; > - rb->_BaseFormat = _mesa_base_fbo_format(ctx, internalFormat); > + rb->_BaseFormat = _mesa_get_format_base_format(rb->Format); > > intel_miptree_release(&irb->mt); >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev