We want to be able to support some formats for texturing that we can't render to, which means that some choices for RenderbufferStorage end up being incomplete (for example, L8 currently). For these, where we don't render to them, we don't want to have to make up an rb->DataType that's only used for GetRow()/PutRow(). --- src/mesa/drivers/dri/intel/intel_span.c | 7 +++++++ src/mesa/drivers/dri/intel/intel_tex_format.c | 6 ++++-- 2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/src/mesa/drivers/dri/intel/intel_span.c b/src/mesa/drivers/dri/intel/intel_span.c index 604962d..191f776 100644 --- a/src/mesa/drivers/dri/intel/intel_span.c +++ b/src/mesa/drivers/dri/intel/intel_span.c @@ -436,4 +436,11 @@ intel_set_span_functions(struct intel_context *intel, assert(intel_span_init_funcs[irb->Base.Format]); intel_span_init_funcs[irb->Base.Format](rb); + + if (rb->DataType == GL_NONE) { + _mesa_problem(NULL, + "renderbuffer format %s is missing " + "intel_mesa_format_to_rb_datatype() support.", + _mesa_get_format_name(rb->Format)); + } } diff --git a/src/mesa/drivers/dri/intel/intel_tex_format.c b/src/mesa/drivers/dri/intel/intel_tex_format.c index 6890a69..a9f4981 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_format.c +++ b/src/mesa/drivers/dri/intel/intel_tex_format.c @@ -42,8 +42,10 @@ intel_mesa_format_to_rb_datatype(gl_format format) return GL_FLOAT; default: - _mesa_problem(NULL, "unexpected MESA_FORMAT for renderbuffer"); - return GL_UNSIGNED_BYTE; + /* Unsupported format. We may hit this when people ask for FBO-incomplete + * formats. + */ + return GL_NONE; } } -- 1.7.7 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev