Module: Mesa Branch: master Commit: 6bf0f6ae86dae14ed0348e5fccf75c43302ad502 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6bf0f6ae86dae14ed0348e5fccf75c43302ad502
Author: Eric Anholt <[email protected]> Date: Fri Jan 20 13:59:37 2012 -0800 meta: Detect currently-unsupported integer CopyTexSubImage and complain. This code is unprepared for handling integer (particularly, the baseFormat of the TexFormat comes out as GL_RGBA, not GL_RGBA_INTEGER, so the direct call of Driver.ReadPixels crashes due to the int vs non-int error checking not having happened). I'm frankly tempted to convert this code to MapRenderbuffer/MapTexImage rather than doing it as meta ops, now that we have that support. Improves the remaining crash in Intel oglconform for int-textures to just a rendering failure. NOTE: This is a candidate for the 8.0 branch. Reviewed-by: Brian Paul <[email protected]> --- src/mesa/drivers/common/meta.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index 05cc712..aa5fef8 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -3131,6 +3131,11 @@ copy_tex_sub_image(struct gl_context *ctx, format = GL_RGBA; } + if (_mesa_is_format_integer_color(texImage->TexFormat)) { + _mesa_problem(ctx, "unsupported integer color copyteximage"); + return; + } + type = get_temp_image_type(ctx, format); bpp = _mesa_bytes_per_pixel(format, type); if (bpp <= 0) { _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
