summaryrefslogtreecommitdiff
path: root/external/cairo/pixman/pixman-ubsan.patch
diff options
context:
space:
mode:
Diffstat (limited to 'external/cairo/pixman/pixman-ubsan.patch')
-rw-r--r--external/cairo/pixman/pixman-ubsan.patch11
1 files changed, 11 insertions, 0 deletions
diff --git a/external/cairo/pixman/pixman-ubsan.patch b/external/cairo/pixman/pixman-ubsan.patch
index 4455d4a324e8..8f68d569e117 100644
--- a/external/cairo/pixman/pixman-ubsan.patch
+++ b/external/cairo/pixman/pixman-ubsan.patch
@@ -183,3 +183,14 @@
w--;
}
+--- misc/pixman/pixman/pixman-utils.c
++++ misc/build/pixman/pixman/pixman-utils.c
+@@ -214,7 +214,7 @@
+ g = float_to_unorm (src[i].g, 8);
+ b = float_to_unorm (src[i].b, 8);
+
+- dst[i] = (a << 24) | (r << 16) | (g << 8) | (b << 0);
++ dst[i] = ((uint32_t)a << 24) | (r << 16) | (g << 8) | (b << 0);
+ }
+ }
+