Recent gcc versions give the following compiler warning with space-flares:
./plugin.c: In function ‘star_bg_update’:
./plugin.c:762:21: warning: taking the absolute value of unsigned type ‘uint32_t’ {aka ‘unsigned int’} has no effect [-Wabsolute-value]
762 | if (abs (((image_data[x + y * width] >> 16) & 0xff) - ((pixel_colour >> 16) & 0xff)) > 8) {
| ^~~
This commit fixes this, assuming that gcc actually optimises the abs()
away, this will also make the code behave as intended again.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
x = star_bg->star_x[i];
y = star_bg->star_y[i];
uint32_t pixel_colour = star_bg_gradient_colour (x, y, width, height, true, time);
- if (abs (((image_data[x + y * width] >> 16) & 0xff) - ((pixel_colour >> 16) & 0xff)) > 8) {
+ if (abs ((int)((image_data[x + y * width] >> 16) & 0xff) - (int)((pixel_colour >> 16) & 0xff)) > 8) {
image_data[x + y * width] = pixel_colour;
star_bg->star_refresh[i] = 1;
}