how-lix-os-pkgs/cairo/default/patches-available/musl-stacksize.patch

24 lines
915 B
Diff

Reduce the footprint of stack frame usage by turning
some large(r) structures as `static __thread` instead.
--- a/src/cairo-rectangular-scan-converter.c 2015-10-27 22:04:21.000000000 +0100
+++ b/src/cairo-rectangular-scan-converter.c 2016-05-07 04:25:26.640851782 +0200
@@ -489,7 +489,7 @@
cairo_span_renderer_t *renderer,
rectangle_t **rectangles)
{
- sweep_line_t sweep_line;
+ static __thread sweep_line_t sweep_line;
rectangle_t *start, *stop;
cairo_status_t status;
@@ -656,7 +656,7 @@
cairo_span_renderer_t *renderer)
{
cairo_rectangular_scan_converter_t *self = converter;
- rectangle_t *rectangles_stack[CAIRO_STACK_ARRAY_LENGTH (rectangle_t *)];
+ static __thread rectangle_t *rectangles_stack[CAIRO_STACK_ARRAY_LENGTH (rectangle_t *)];
rectangle_t **rectangles;
struct _cairo_rectangular_scan_converter_chunk *chunk;
cairo_status_t status;