diff options
author | Federico Mena Quintero <federico@gnome.org> | 2020-03-18 18:49:30 -0600 |
---|---|---|
committer | Federico Mena Quintero <federico@gnome.org> | 2020-03-18 18:52:16 -0600 |
commit | 6fe0131394fb029d2fccaee6b8edcb108840ad8a (patch) | |
tree | 7ffa7210539f7bd245cc59a3cc55d2d357bc7ab4 | |
parent | 3344f507dd4483643a4f238ea303ba49fc8469fc (diff) | |
download | pixman-6fe0131394fb029d2fccaee6b8edcb108840ad8a.tar.gz |
Initialize temporary buffers in general_composite_rect()
Otherwise, Valgrind shows things like "conditional jump or move
depends on uninitialised values" errors much later in calling code.
For example, see https://gitlab.gnome.org/GNOME/librsvg/issues/572
Fixes https://gitlab.freedesktop.org/pixman/pixman/issues/9
-rw-r--r-- | pixman/pixman-general.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pixman/pixman-general.c b/pixman/pixman-general.c index 7d74f98..7e5a0d0 100644 --- a/pixman/pixman-general.c +++ b/pixman/pixman-general.c @@ -165,6 +165,12 @@ general_composite_rect (pixman_implementation_t *imp, if (!scanline_buffer) return; + + memset (scanline_buffer, 0, width * Bpp * 3 + 15 * 3); + } + else + { + memset (stack_scanline_buffer, 0, sizeof (stack_scanline_buffer)); } src_buffer = ALIGN (scanline_buffer); |