Hi Ken, Have a look at
https://patchwork.freedesktop.org/patch/134865/ https://patchwork.freedesktop.org/patch/135410/ No idea what the outcome of that was. I guess some code reorg has happened since too. If, after reading through those, you think this is right - go ahead :) I've lost all context on this. -ilia On Sat, Oct 7, 2017 at 3:05 AM, Kenneth Graunke <kenn...@whitecape.org> wrote: > This offers a more accurate bound. > > Fixes KHR-GL45.geometry_shader.layered_fbo.fb_texture_invalid_level_number. > --- > src/mesa/main/fbobject.c | 14 ++++++++------ > 1 file changed, 8 insertions(+), 6 deletions(-) > > diff --git a/src/mesa/main/fbobject.c b/src/mesa/main/fbobject.c > index 0867ff70fa7..e11feda5f3c 100644 > --- a/src/mesa/main/fbobject.c > +++ b/src/mesa/main/fbobject.c > @@ -3223,11 +3223,13 @@ check_layer(struct gl_context *ctx, GLenum target, > GLint layer, > * \return true if no errors, false if errors > */ > static bool > -check_level(struct gl_context *ctx, GLenum target, GLint level, > - const char *caller) > +check_level(struct gl_context *ctx, struct gl_texture_object *texObj, > + GLenum target, GLint level, const char *caller) > { > - if ((level < 0) || > - (level >= _mesa_max_texture_levels(ctx, target))) { > + const int max_levels = texObj->Immutable ? texObj->ImmutableLevels : > + _mesa_max_texture_levels(ctx, target); > + > + if (level < 0 || level >= max_levels) { > _mesa_error(ctx, GL_INVALID_VALUE, > "%s(invalid level %d)", caller, level); > return false; > @@ -3393,7 +3395,7 @@ framebuffer_texture_with_dims(int dims, GLenum target, > if ((dims == 3) && !check_layer(ctx, texObj->Target, layer, caller)) > return; > > - if (!check_level(ctx, textarget, level, caller)) > + if (!check_level(ctx, texObj, textarget, level, caller)) > return; > } > > @@ -3539,7 +3541,7 @@ frame_buffer_texture(GLuint framebuffer, GLenum target, > return; > } > > - if (!check_level(ctx, texObj->Target, level, func)) > + if (!check_level(ctx, texObj, texObj->Target, level, func)) > return; > } > > -- > 2.14.2 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev