st/mesa: fix strides in (de)compress_image() functions
authorBrian Paul <brianp@vmware.com>
Tue, 27 Apr 2010 14:28:53 +0000 (08:28 -0600)
committerBrian Paul <brianp@vmware.com>
Tue, 27 Apr 2010 14:28:55 +0000 (08:28 -0600)
Mipmap generation for compressed textures works now.

src/mesa/state_tracker/st_gen_mipmap.c

index d6b024d8b8ccb0956e42b6b7ea6f3ef3496d7023..24a072ee12e16c3472225dc2a289d629b61cc7a9 100644 (file)
@@ -104,14 +104,8 @@ decompress_image(enum pipe_format format,
                  unsigned width, unsigned height)
 {
    const struct util_format_description *desc = util_format_description(format);
-   const uint bw = util_format_get_blockwidth(format);
-   const uint src_stride = align(width, bw) / util_format_get_blocksize(format);
    const uint dst_stride = 4 * width;
-
-   /*
-   printf("decompress %s %d x %d  %d -> %d\n",
-          util_format_name(format), width, height, src_stride, dst_stride);
-   */
+   const uint src_stride = util_format_get_stride(format, width);
 
    desc->unpack_rgba_8unorm(dst, dst_stride, src, src_stride, width, height);
 }
@@ -127,14 +121,8 @@ compress_image(enum pipe_format format,
                unsigned width, unsigned height)
 {
    const struct util_format_description *desc = util_format_description(format);
-   const uint bw = util_format_get_blockwidth(format);
+   const uint dst_stride = util_format_get_stride(format, width);
    const uint src_stride = 4 * width;
-   const uint dst_stride = align(width, bw) / util_format_get_blocksize(format);
-
-   /*
-   printf("compress %s %d x %d   %d -> %d\n",
-          util_format_name(format), width, height, src_stride, dst_stride);
-   */
 
    desc->pack_rgba_8unorm(dst, dst_stride, src, src_stride, width, height);
 }