diff options
Diffstat (limited to 'user/pixman/stacksize-reduction.patch')
-rw-r--r-- | user/pixman/stacksize-reduction.patch | 17 |
1 files changed, 13 insertions, 4 deletions
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); |