From: Jānis Rūcis Date: Fri, 30 Jul 2010 21:27:43 +0000 (+0300) Subject: Fix/add grayscale-to-RGB in PNG loader X-Git-Tag: xonotic-v0.5.0~240^2 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=048cdb6eb26693ee30056e95db76da09165f738e;p=xonotic%2Fnetradiant.git Fix/add grayscale-to-RGB in PNG loader --- diff --git a/plugins/imagepng/plugin.cpp b/plugins/imagepng/plugin.cpp index 3b761447..05aea74b 100644 --- a/plugins/imagepng/plugin.cpp +++ b/plugins/imagepng/plugin.cpp @@ -104,8 +104,11 @@ Image* LoadPNGBuff (unsigned char* fbuffer) // The following code transforms grayscale images of less than 8 to 8 bits, // changes paletted images to RGB, and adds a full alpha channel if there is // transparency information in a tRNS chunk. - if (color_type == PNG_COLOR_TYPE_PALETTE) - png_set_palette_to_rgb(png_ptr); + + if (color_type == PNG_COLOR_TYPE_GRAY || color_type == PNG_COLOR_TYPE_GRAY_ALPHA) + png_set_gray_to_rgb(png_ptr); + else if (color_type == PNG_COLOR_TYPE_PALETTE) + png_set_palette_to_rgb(png_ptr); if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) png_set_expand_gray_1_2_4_to_8(png_ptr);