diff options
author | Taichi Haradaguchi <20001722@ymail.ne.jp> | 2022-11-28 21:04:45 +0900 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2023-02-01 11:58:57 +0100 |
commit | e48dd97c32575f83b20ac2d7820a1d498a7618f2 (patch) | |
tree | cb8ab802ac7a5ce3793518f2ba119e46666c93d2 /external | |
parent | 46674baae6a721d8df89c0b3f2e12606e7512e9e (diff) |
pixman: upgrade to release 0.42.2
Fixes CVE-2022-44638
Remove Wincompatible-function-pointer-types.patch.0, fixed upstream.
Change-Id: If6589a701a252f71da145264ee3a6f0e333492ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143423
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
(cherry picked from commit 93a69d37c1dbcc7365dc0cf2493d1ca27babef2b)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143439
Diffstat (limited to 'external')
-rw-r--r-- | external/cairo/ExternalPackage_pixman.mk | 2 | ||||
-rw-r--r-- | external/cairo/ExternalProject_pixman.mk | 6 | ||||
-rw-r--r-- | external/cairo/pixman/pixman-0.24.4.patch | 2 | ||||
-rw-r--r-- | external/cairo/pixman/pixman-ubsan.patch | 41 |
4 files changed, 27 insertions, 24 deletions
diff --git a/external/cairo/ExternalPackage_pixman.mk b/external/cairo/ExternalPackage_pixman.mk index 458c2733503e..85ff062f22e2 100644 --- a/external/cairo/ExternalPackage_pixman.mk +++ b/external/cairo/ExternalPackage_pixman.mk @@ -12,7 +12,7 @@ $(eval $(call gb_ExternalPackage_ExternalPackage,pixman,pixman)) $(eval $(call gb_ExternalPackage_use_external_project,pixman,pixman)) ifneq ($(DISABLE_DYNLOADING),TRUE) -$(eval $(call gb_ExternalPackage_add_file,pixman,$(LIBO_LIB_FOLDER)/libpixman-1.so.0,pixman/.libs/libpixman-1.so.0.40.0)) +$(eval $(call gb_ExternalPackage_add_file,pixman,$(LIBO_LIB_FOLDER)/libpixman-1.so.0,pixman/.libs/libpixman-1.so.0.42.2)) endif # vim: set noet sw=4 ts=4: diff --git a/external/cairo/ExternalProject_pixman.mk b/external/cairo/ExternalProject_pixman.mk index 2c089ba0e5fc..9293b9234013 100644 --- a/external/cairo/ExternalProject_pixman.mk +++ b/external/cairo/ExternalProject_pixman.mk @@ -25,9 +25,9 @@ $(call gb_ExternalProject_get_state_target,pixman,build) : $(call gb_ExternalProject_run,build,\ $(gb_RUN_CONFIGURE) ./configure \ $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--disable-shared,--disable-static) \ - $(if $(filter ANDROID,$(OS)),--disable-arm-simd --disable-arm-neon --disable-arm-iwmmxt) \ - $(if $(CROSS_COMPILING),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ - $(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \ + $(if $(filter ANDROID,$(OS)),--disable-arm-simd --disable-arm-neon --disable-arm-a64-neon --disable-arm-iwmmxt) \ + $(gb_CONFIGURE_PLATFORMS) \ + $(if $(CROSS_COMPILING),$(if $(filter INTEL ARM,$(CPUNAME)),ac_cv_c_bigendian=no)) \ $(if $(filter EMSCRIPTEN,$(OS)),CFLAGS="-pthread") \ && $(MAKE) \ ) diff --git a/external/cairo/pixman/pixman-0.24.4.patch b/external/cairo/pixman/pixman-0.24.4.patch index 6d871e37bfd1..a5d32f88f82f 100644 --- a/external/cairo/pixman/pixman-0.24.4.patch +++ b/external/cairo/pixman/pixman-0.24.4.patch @@ -1,6 +1,6 @@ --- misc/pixman-0.24.4/Makefile.in 2011-11-06 22:11:25.000000000 +0100 +++ misc/build/pixman-0.24.4/Makefile.in 2011-12-16 09:06:45.317211035 +0100 -@@ -272,7 +272,7 @@ +@@ -385,7 +385,7 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ diff --git a/external/cairo/pixman/pixman-ubsan.patch b/external/cairo/pixman/pixman-ubsan.patch index 3a556d19a9dd..64e5778ee4d4 100644 --- a/external/cairo/pixman/pixman-ubsan.patch +++ b/external/cairo/pixman/pixman-ubsan.patch @@ -1,6 +1,6 @@ -diff -ru pixman-0.40.0.orig/pixman/pixman-bits-image.c pixman-0.40.0/pixman/pixman-bits-image.c ---- misc/pixman-0.40.0.orig/pixman/pixman-bits-image.c 2021-08-29 20:02:33.714515016 +0100 -+++ misc/build/pixman-0.40.0/pixman/pixman-bits-image.c 2021-08-29 20:05:43.304930185 +0100 +diff -ru pixman-0.42.2.orig/pixman/pixman-bits-image.c pixman-0.42.2/pixman/pixman-bits-image.c +--- misc/pixman-0.42.2.orig/pixman/pixman-bits-image.c 2022-11-03 02:25:48.000000000 +0900 ++++ misc/build/pixman-0.42.2/pixman/pixman-bits-image.c 2022-11-28 21:35:25.896969126 +0900 @@ -351,8 +351,8 @@ * positioned relative to a particular phase (and not relative to whatever * exact fraction we happen to get here). @@ -12,9 +12,9 @@ diff -ru pixman-0.40.0.orig/pixman/pixman-bits-image.c pixman-0.40.0/pixman/pixm px = (x & 0xffff) >> x_phase_shift; py = (y & 0xffff) >> y_phase_shift; -diff -ru pixman-0.40.0.orig/pixman/pixman-combine32.c pixman-0.40.0/pixman/pixman-combine32.c ---- misc/pixman-0.40.0.orig/pixman/pixman-combine32.c 2021-08-29 20:02:33.715514970 +0100 -+++ misc/build/pixman-0.40.0/pixman/pixman-combine32.c 2021-08-29 20:05:43.304930185 +0100 +diff -ru pixman-0.42.2.orig/pixman/pixman-combine32.c pixman-0.42.2/pixman/pixman-combine32.c +--- misc/pixman-0.42.2.orig/pixman/pixman-combine32.c 2022-02-02 05:51:25.000000000 +0900 ++++ misc/build/pixman-0.42.2/pixman/pixman-combine32.c 2022-11-28 21:38:48.226968594 +0900 @@ -589,7 +589,7 @@ rg = DIV_ONE_UN8 (rg); \ rb = DIV_ONE_UN8 (rb); \ @@ -24,9 +24,9 @@ diff -ru pixman-0.40.0.orig/pixman/pixman-combine32.c pixman-0.40.0/pixman/pixma } \ } \ \ -diff -ru pixman-0.40.0.orig/pixman/pixman-fast-path.c pixman-0.40.0/pixman/pixman-fast-path.c ---- misc/pixman-0.40.0.orig/pixman/pixman-fast-path.c 2021-08-29 20:02:33.716514925 +0100 -+++ misc/build/pixman-0.40.0/pixman/pixman-fast-path.c 2021-08-29 20:05:43.303930231 +0100 +diff -ru pixman-0.42.2.orig/pixman/pixman-fast-path.c pixman-0.42.2/pixman/pixman-fast-path.c +--- misc/pixman-0.42.2.orig/pixman/pixman-fast-path.c 2022-10-18 02:47:42.000000000 +0900 ++++ misc/build/pixman-0.42.2/pixman/pixman-fast-path.c 2022-11-28 21:53:12.596963317 +0900 @@ -2758,8 +2758,8 @@ * positioned relative to a particular phase (and not relative to whatever * exact fraction we happen to get here). @@ -38,19 +38,22 @@ diff -ru pixman-0.40.0.orig/pixman/pixman-fast-path.c pixman-0.40.0/pixman/pixma px = (x & 0xffff) >> x_phase_shift; py = (y & 0xffff) >> y_phase_shift; -@@ -2836,7 +2836,7 @@ - sgtot = CLIP (sgtot, 0, 0xff); +@@ -2837,9 +2837,9 @@ sbtot = CLIP (sbtot, 0, 0xff); + #ifdef WORDS_BIGENDIAN +- buffer[k] = (satot << 0) | (srtot << 8) | (sgtot << 16) | (sbtot << 24); ++ buffer[k] = (satot << 0) | (srtot << 8) | (sgtot << 16) | ((uint32_t)sbtot << 24); + #else - buffer[k] = (satot << 24) | (srtot << 16) | (sgtot << 8) | (sbtot << 0); + buffer[k] = ((uint32_t)satot << 24) | (srtot << 16) | (sgtot << 8) | (sbtot << 0); + #endif next: - vx += ux; -diff -ru pixman-0.40.0.orig/pixman/pixman-sse2.c pixman-0.40.0/pixman/pixman-sse2.c ---- misc/pixman-0.40.0.orig/pixman/pixman-sse2.c 2021-08-29 20:02:33.716514925 +0100 -+++ misc/build/pixman-0.40.0/pixman/pixman-sse2.c 2021-08-29 20:05:43.306930095 +0100 -@@ -3344,7 +3344,7 @@ +diff -ru pixman-0.42.2.orig/pixman/pixman-sse2.c pixman-0.42.2/pixman/pixman-sse2.c +--- misc/pixman-0.42.2/pixman/pixman-sse2.c 2022-02-02 05:51:25.000000000 +0900 ++++ misc/build/pixman-0.42.2/pixman/pixman-sse2.c 2022-11-28 22:11:19.276969466 +0900 +@@ -3345,7 +3345,7 @@ b = filler & 0xff; w = (b << 8) | b; @@ -59,9 +62,9 @@ diff -ru pixman-0.40.0.orig/pixman/pixman-sse2.c pixman-0.40.0/pixman/pixman-sse } else if (bpp == 16) { -diff -ru pixman-0.40.0.orig/pixman/pixman-utils.c pixman-0.40.0/pixman/pixman-utils.c ---- misc/pixman-0.40.0.orig/pixman/pixman-utils.c 2021-08-29 20:02:33.715514970 +0100 -+++ misc/build/pixman-0.40.0/pixman/pixman-utils.c 2021-08-29 20:05:43.306930095 +0100 +diff -ru pixman-0.42.2.orig/pixman/pixman-utils.c pixman-0.42.2/pixman/pixman-utils.c +--- misc/pixman-0.42.2.orig/pixman/pixman-utils.c 2022-02-02 05:51:25.000000000 +0900 ++++ misc/build/pixman-0.42.2/pixman/pixman-utils.c 2022-11-28 21:55:44.196964912 +0900 @@ -213,7 +213,7 @@ g = float_to_unorm (src[i].g, 8); b = float_to_unorm (src[i].b, 8); |