diff options
Diffstat (limited to 'user/pixman')
-rw-r--r-- | user/pixman/APKBUILD | 14 | ||||
-rw-r--r-- | user/pixman/stacksize-reduction.patch | 17 |
2 files changed, 22 insertions, 9 deletions
diff --git a/user/pixman/APKBUILD b/user/pixman/APKBUILD index 50ff4f981..b8bf2ba58 100644 --- a/user/pixman/APKBUILD +++ b/user/pixman/APKBUILD @@ -1,7 +1,7 @@ # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=pixman -pkgver=0.38.4 -pkgrel=1 +pkgver=0.42.2 +pkgrel=0 pkgdesc="Low-level pixel manipulation library" url="https://www.X.Org/" arch="all" @@ -9,10 +9,14 @@ license="MIT" depends="" makedepends="libpng-dev perl linux-headers" subpackages="$pkgname-dev $pkgname-dbg" -source="https://www.X.Org/releases/individual/lib/$pkgname-$pkgver.tar.bz2 +source="https://www.X.Org/releases/individual/lib/$pkgname-$pkgver.tar.xz stacksize-reduction.patch " +# secfixes: +# 0.42.2-r0: +# - CVE-2022-44638 + build() { # Static is needed by qemu @@ -34,5 +38,5 @@ package() { make DESTDIR="$pkgdir" install } -sha512sums="0683b7f67caa0881b23188b7e6f8487c7e0a1257a912686616b7d862efd5a9efdb51641c81ec54905a6f6b1029d796ca4e25c0909db28fc29fa3617bf09f9cf9 pixman-0.38.4.tar.bz2 -3d75e7328e6eaaa6e8f4defa4402db815764369f94b81be38fba07933267fe24b03b591dd4c3f3544cb090650153728bfbdd81a91acaf19524c3d08f61427f63 stacksize-reduction.patch" +sha512sums="3476e2676e66756b1af61b1e532cd80c985c191fb7956eb01702b419726cce99e79163b7f287f74f66414680e7396d13c3fee525cd663f12b6ac4877070ff4e8 pixman-0.42.2.tar.xz +0dc8cf94690381d32c1bebf33925475891888f19403ebe2e0dc82841ddba3689284fd88d68d751cbf8179aa968b5238455a21047a3c60a0dd6aeac615020ebdd stacksize-reduction.patch" diff --git a/user/pixman/stacksize-reduction.patch b/user/pixman/stacksize-reduction.patch index 38da9b3ff..ef90847ac 100644 --- a/user/pixman/stacksize-reduction.patch +++ b/user/pixman/stacksize-reduction.patch @@ -2,8 +2,8 @@ Reduce the stack footprint of pixman's function general_composite_rect() which allocates a large buffer `stack_scanline_buffer`. Make it `static __thread` instead. ---- a/pixman/pixman-general.c 2015-12-27 21:37:37.000000000 +0100 -+++ b/pixman/pixman-general.c 2016-05-05 12:24:47.346661080 +0200 +--- pixman-0.42.2/pixman/pixman-general.c.old 2022-02-01 14:51:25.000000000 -0600 ++++ pixman-0.42.2/pixman/pixman-general.c 2022-11-20 22:12:40.313477382 -0600 @@ -128,8 +128,8 @@ pixman_composite_info_t *info) { @@ -15,7 +15,7 @@ general_composite_rect() which allocates a large buffer uint8_t *src_buffer, *mask_buffer, *dest_buffer; pixman_iter_t src_iter, mask_iter, dest_iter; pixman_combine_32_func_t compose; -@@ -158,7 +158,7 @@ +@@ -159,7 +159,7 @@ if (width <= 0 || _pixman_multiply_overflows_int (width, Bpp * 3)) return; @@ -24,7 +24,16 @@ general_composite_rect() which allocates a large buffer { scanline_buffer = pixman_malloc_ab_plus_c (width, Bpp * 3, 15 * 3); -@@ -232,7 +232,7 @@ +@@ -170,7 +170,7 @@ + } + else + { +- memset (stack_scanline_buffer, 0, sizeof (stack_scanline_buffer)); ++ memset (static_scanline_buffer, 0, sizeof (static_scanline_buffer)); + } + + src_buffer = ALIGN (scanline_buffer); +@@ -239,7 +239,7 @@ if (dest_iter.fini) dest_iter.fini (&dest_iter); |