[Mesa-dev] [PATCH] intel: Return success when asked to allocate a 0-width/height renderbuffer.

Kenneth Graunke kenneth at whitecape.org
Tue Apr 24 00:50:03 PDT 2012


On 04/23/2012 03:11 PM, Eric Anholt wrote:
> It seems silly that GL lets you allocate these given that they're
> framebuffer attachment incomplete, but the webgl conformance tests
> actually go looking to see if the getters on 0-width/height
> depth/stencil renderbuffers return good values.  By failing out here,
> they all got smashed to 0, which turned out to be correct for all the
> getters they tested except for GL_RENDERBUFFER_INTERNAL_FORMAT.  Now,
> by succeeding but not making a miptree, that one also returns the
> expected value.
> ---
>   src/mesa/drivers/dri/intel/intel_fbo.c |    3 +++
>   1 file changed, 3 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c
> index 2d1a798..5872ece 100644
> --- a/src/mesa/drivers/dri/intel/intel_fbo.c
> +++ b/src/mesa/drivers/dri/intel/intel_fbo.c
> @@ -237,6 +237,9 @@ intel_alloc_renderbuffer_storage(struct gl_context * ctx, struct gl_renderbuffer
>          _mesa_lookup_enum_by_nr(internalFormat),
>          _mesa_get_format_name(rb->Format), width, height);
>
> +   if (width == 0 || height == 0)
> +      return true;
> +
>      irb->mt = intel_miptree_create_for_renderbuffer(intel, rb->Format,
>   						   width, height);
>      if (!irb->mt)

Seems reasonable.  If it makes more tests pass and doesn't cause 
regressions, we should do it.  Besides, it's entirely pointless and not 
going to affect real applications anyway.

Acked-by: Kenneth Graunke <kenneth at whitecape.org>


More information about the mesa-dev mailing list