From 1b09a7f08a7561ae179d65b7b7b73964fc92ef22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Tue, 24 Feb 2015 23:15:59 +0100 Subject: [PATCH] r300g: fix a crash when resolving into an sRGB texture Cc: 10.5 10.4 --- src/gallium/drivers/r300/r300_texture.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/r300/r300_texture.c b/src/gallium/drivers/r300/r300_texture.c index ffe8c00..03c0e8f 100644 --- a/src/gallium/drivers/r300/r300_texture.c +++ b/src/gallium/drivers/r300/r300_texture.c @@ -936,14 +936,16 @@ static void r300_texture_setup_fb_state(struct r300_surface *surf) surf->pitch_zmask = tex->tex.zmask_stride_in_pixels[level]; surf->pitch_hiz = tex->tex.hiz_stride_in_pixels[level]; } else { + enum pipe_format format = util_format_linear(surf->base.format); + surf->pitch = stride | - r300_translate_colorformat(surf->base.format) | + r300_translate_colorformat(format) | R300_COLOR_TILE(tex->tex.macrotile[level]) | R300_COLOR_MICROTILE(tex->tex.microtile); - surf->format = r300_translate_out_fmt(surf->base.format); + surf->format = r300_translate_out_fmt(format); surf->colormask_swizzle = - r300_translate_colormask_swizzle(surf->base.format); + r300_translate_colormask_swizzle(format); surf->pitch_cmask = tex->tex.cmask_stride_in_pixels; } } -- 2.1.0