Add valgrind suppressions for libpng/libz use of uninitialized data. There are clearly bugs here that are not cairo's fault as zeroing the buffer before writing the png image actually causes more errors(\!). And, notably, setting all the data to random bytes usually makes the errors go away.

Change the check-valgrind target to include the .valgrind-suppresions file and to tee output into valgrind.log.
This commit is contained in:
Carl Worth 2005-07-18 14:35:54 +00:00
parent 0adea66c73
commit cd587375e3
3 changed files with 40 additions and 1 deletions

View file

@ -1,3 +1,16 @@
2005-07-18 Carl Worth <cworth@cworth.org>
* test/.valgrind-suppressions: Add valgrind suppressions for
libpng/libz use of uninitialized data. There are clearly bugs here
that are not cairo's fault as zeroing the buffer before writing
the png image actually causes more errors(\!). And, notably,
setting all the data to random bytes usually makes the errors go
away.
* test/Makefile.am: Change the check-valgrind target to include
the .valgrind-suppresions file and to tee output into
valgrind.log.
2005-07-18 Carl Worth <cworth@cworth.org>
* configure.in: Add -head to CAIRO_VERSION after tagging with

View file

@ -0,0 +1,26 @@
{
cairo's write_png triggers apparent bugs in libpng/libz
Memcheck:Cond
obj:/usr/lib/libz.so.1.2.2.2
obj:/usr/lib/libz.so.1.2.2.2
fun:deflate
fun:png_write_finish_row
fun:png_write_filtered_row
fun:png_write_find_filter
fun:png_write_row
fun:png_write_image
fun:write_png
}
{
cairo's write_png_argb32 triggers apparent bugs in libpng/libz
Memcheck:Cond
obj:/usr/lib/libz.so.1.2.2.2
obj:/usr/lib/libz.so.1.2.2.2
fun:deflate
fun:png_write_finish_row
fun:png_write_filtered_row
fun:png_write_find_filter
fun:png_write_row
fun:png_write_image
fun:write_png_argb32
}

View file

@ -190,4 +190,4 @@ CLEANFILES = \
pdf-clip.pdf
check-valgrind:
TESTS_ENVIRONMENT="libtool --mode=execute valgrind --tool=memcheck --leak-check=yes --show-reachable=yes" $(MAKE) check
TESTS_ENVIRONMENT="libtool --mode=execute valgrind --tool=memcheck --suppressions=./.valgrind-suppressions --leak-check=yes --show-reachable=yes" $(MAKE) check 2>&1 | tee valgrind.log