if (png_get_sRGB && png_get_sRGB(png_ptr, info_ptr, &intent)) { png_set_sRGB(png_ptr, info_ptr, intent); } else if (png_get_gAMA != NULL) { double gamma; if (!png_get_gAMA(png_ptr, info_ptr, &gamma)) { gamma = 0.45455; } png_set_gamma(png_ptr, 1.0, gamma); }