forked from enlightenment/efl
parent
5eda84b66b
commit
87af70ceef
|
@ -10,8 +10,9 @@ evas_common_convert_argb_premul(DATA32 *data, unsigned int len)
|
|||
{
|
||||
DATA32 a = 1 + (*data >> 24);
|
||||
|
||||
*data++ = (*data & 0xff000000) + (((((*data) >> 8) & 0xff) * a) & 0xff00) +
|
||||
(((((*data) & 0x00ff00ff) * a) >> 8) & 0x00ff00ff);
|
||||
*data++ = (*data & 0xff000000) +
|
||||
(((((*data) >> 8) & 0xff) * a) & 0xff00) +
|
||||
(((((*data) & 0x00ff00ff) * a) >> 8) & 0x00ff00ff);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -24,8 +25,11 @@ evas_common_convert_argb_unpremul(DATA32 *data, unsigned int len)
|
|||
{
|
||||
DATA32 a = (*data >> 24);
|
||||
|
||||
if (a & (a < 255))
|
||||
*data = ARGB_JOIN(a, (R_VAL(data) * 255) / a, (G_VAL(data) * 255) / a, (B_VAL(data) * 255) / a);
|
||||
if ((a > 0) && (a < 255))
|
||||
*data = ARGB_JOIN(a,
|
||||
(R_VAL(data) * 255) / a,
|
||||
(G_VAL(data) * 255) / a,
|
||||
(B_VAL(data) * 255) / a);
|
||||
data++;
|
||||
}
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ save_image_png(RGBA_Image *im, const char *file, int compress, int interlace)
|
|||
FILE *f;
|
||||
png_structp png_ptr;
|
||||
png_infop info_ptr;
|
||||
DATA32 *ptr, *data;
|
||||
DATA32 *ptr, *data = NULL;
|
||||
int x, y, j;
|
||||
png_bytep row_ptr, png_data = NULL;
|
||||
png_color_8 sig_bit;
|
||||
|
@ -128,7 +128,7 @@ save_image_png(RGBA_Image *im, const char *file, int compress, int interlace)
|
|||
png_destroy_info_struct(png_ptr, (png_infopp) & info_ptr);
|
||||
|
||||
if (im->flags & RGBA_IMAGE_HAS_ALPHA)
|
||||
free(data);
|
||||
free(data);
|
||||
fclose(f);
|
||||
return 1;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue