From: Chad Versace Date: Thu, 27 Sep 2012 18:05:34 +0000 (-0700) Subject: intel: Fix yet-another-bug in intel_texsubimage_tiled_memcpy X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b5891286202987dfc2606ac716050c0ee426de11;p=mesa.git intel: Fix yet-another-bug in intel_texsubimage_tiled_memcpy The most recent commit that touched this function, commit b1d0fe022dc4826dadce014ab8fe062a82f75a16 Author: Chad Versace Date: Wed Sep 26 11:05:12 2012 -0700 intel: Fix segfault in intel_texsubimage_tiled_memcpy did fix the segfault, but introduced yet another bug. From Anholt: """You need to still test format/type, because that's the incoming format (e.g. GL_RGBA/GL_FLOAT) that you're trying to memcpy.""" This patch re-introduces the checks on the incoming format and type. Note: This is a candidate for the 9.0 branch. Reviewed-by: Eric Anholt Signed-off-by: Chad Versace --- diff --git a/src/mesa/drivers/dri/intel/intel_tex_subimage.c b/src/mesa/drivers/dri/intel/intel_tex_subimage.c index aa6f237f742..55d0bae2737 100644 --- a/src/mesa/drivers/dri/intel/intel_tex_subimage.c +++ b/src/mesa/drivers/dri/intel/intel_tex_subimage.c @@ -199,6 +199,8 @@ intel_texsubimage_tiled_memcpy(struct gl_context * ctx, * varying the arithmetic loop below. */ if (!intel->has_llc || + format != GL_BGRA || + type != GL_UNSIGNED_BYTE || texImage->TexFormat != MESA_FORMAT_ARGB8888 || texImage->TexObject->Target != GL_TEXTURE_2D || texImage->Level != 0 ||