diff --git a/legacy/evas/src/modules/engines/software_x11/evas_xcb_color.c b/legacy/evas/src/modules/engines/software_x11/evas_xcb_color.c index 3ed603711e..f451fa193f 100644 --- a/legacy/evas/src/modules/engines/software_x11/evas_xcb_color.c +++ b/legacy/evas/src/modules/engines/software_x11/evas_xcb_color.c @@ -65,13 +65,13 @@ x_color_alloc_rgb(int nr, int val; int dr, dg, db; - val = (int)((((double)r) / ((nr) - 1)) * 255); + val = (int)(((r * 255) / ((nr) - 1))); val = (val << 8) | val; xcl.red = (uint16_t)(val); - val = (int)((((double)g) / ((ng) - 1)) * 255); + val = (int)(((g * 255) / ((ng) - 1))); val = (val << 8) | val; xcl.green = (uint16_t)(val); - val = (int)((((double)b) / ((nb) - 1)) * 255); + val = (int)(((b * 255) / ((nb) - 1))); val = (val << 8) | val; xcl.blue = (uint16_t)(val); xcl_in = xcl; @@ -154,7 +154,7 @@ x_color_alloc_gray(int ng, int val; xcb_alloc_color_reply_t *rep; - val = (int)((((double)g) / ((ng) - 1)) * 255); + val = (int)(((g * 255) / ((ng) - 1))); val = (val << 8) | val; xcl.red = (uint16_t)(val); xcl.green = (uint16_t)(val); diff --git a/legacy/evas/src/modules/engines/software_x11/evas_xlib_color.c b/legacy/evas/src/modules/engines/software_x11/evas_xlib_color.c index 1df0406e57..a59a08ea85 100644 --- a/legacy/evas/src/modules/engines/software_x11/evas_xlib_color.c +++ b/legacy/evas/src/modules/engines/software_x11/evas_xlib_color.c @@ -61,13 +61,13 @@ x_color_alloc_rgb(int nr, int ng, int nb, Display *d, Colormap cmap, Visual *v) Status ret; int dr, dg, db; - val = (int)((((double)r) / ((nr) - 1)) * 255); + val = (int)(((r * 255) / ((nr) - 1))); val = (val << 8) | val; xcl.red = (unsigned short)(val); - val = (int)((((double)g) / ((ng) - 1)) * 255); + val = (int)(((g * 255) / ((ng) - 1))); val = (val << 8) | val; xcl.green = (unsigned short)(val); - val = (int)((((double)b) / ((nb) - 1)) * 255); + val = (int)(((b * 255) / ((nb) - 1))); val = (val << 8) | val; xcl.blue = (unsigned short)(val); xcl_in = xcl; @@ -78,7 +78,7 @@ x_color_alloc_rgb(int nr, int ng, int nb, Display *d, Colormap cmap, Visual *v) if (dg < 0) dg = -dg; db = (int)xcl_in.blue - (int)xcl.blue; if (db < 0) db = -db; -/* +/* printf("ASK [%i]: %04x %04x %04x = %04x %04x %04x | dif = %04x / %04x\n", ret, xcl_in.red, xcl_in.green, xcl_in.blue, @@ -134,7 +134,7 @@ x_color_alloc_gray(int ng, Display *d, Colormap cmap, Visual *v) int val; Status ret; - val = (int)((((double)g) / ((ng) - 1)) * 255); + val = (int)(((g * 255) / ((ng) - 1))); val = (val << 8) | val; xcl.red = (unsigned short)(val); xcl.green = (unsigned short)(val);