summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2011-11-08 11:19:45 -0800
committerEric Anholt <[email protected]>2011-11-09 12:04:39 -0800
commitb5444a6ebd48a2bf4c258be98aac831636164e10 (patch)
treecf1dfecbe9455ca52ed31e9474d9947e5cc8ffd8
parent01ccddbed6ff970e1018c250ba9044bf06671d25 (diff)
intel: Don't _mesa_problem when asked for an RB of a texturing-only type.
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().
-rw-r--r--src/mesa/drivers/dri/intel/intel_span.c7
-rw-r--r--src/mesa/drivers/dri/intel/intel_tex_format.c6
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 604962d3f54..191f7761d97 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 6890a690ab1..a9f4981ab74 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;
}
}