From 8b95e0e460baa499e54c19d29bf761d34c25badc Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Tue, 9 Jan 2018 10:26:29 +0100 Subject: [PATCH] Promote unsigned short to unsigned int explicitly ...to avoid default promotion to signed int, which causes undefined behaviour in the shift expression. --- pixman/pixman-solid-fill.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pixman/pixman-solid-fill.c b/pixman/pixman-solid-fill.c index 5f9fef6..4694ebc 100644 --- a/pixman/pixman-solid-fill.c +++ b/pixman/pixman-solid-fill.c @@ -30,10 +30,10 @@ static uint32_t color_to_uint32 (const pixman_color_t *color) { return - (color->alpha >> 8 << 24) | - (color->red >> 8 << 16) | - (color->green & 0xff00) | - (color->blue >> 8); + ((unsigned int) color->alpha >> 8 << 24) | + ((unsigned int) color->red >> 8 << 16) | + ((unsigned int) color->green & 0xff00) | + ((unsigned int) color->blue >> 8); } static argb_t -- 2.34.1