[cairo-commit] cairo ChangeLog, 1.806, 1.807 Makefile.am, 1.12, 1.13 configure.in, 1.116, 1.117

Carl Worth commit at pdx.freedesktop.org
Mon Aug 1 13:33:49 PDT 2005


Committed by: cworth

Update of /cvs/cairo/cairo
In directory gabe:/tmp/cvs-serv22964

Modified Files:
	ChangeLog Makefile.am configure.in 
Log Message:

2005-08-01  Carl Worth  <cworth at cworth.org>

        * src/cairo-debug.h: New public header file.

        * src/cairo-debug.c: (cairo_debug_reset_static_data): New function
        to reset all static data (eg. caches) to their initial state.

        * Makefile.am: Fix check-valgrind target to depend on the 'all'
        target.

        * configure.in: Add check for a new, proposed, XrmFinalize
        function.

        * src/Makefile.am: Add cairo-debug.c.

        * src/cairo.h:
        * src/cairo-features.h.in: Move the definition of
        CAIRO_BEGIN_DECLS to cairo-features.h so that it can be shared
        between public header files, and so that it doesn't clutter
        cairo.h

        * src/cairoint.h:
        * src/cairo-font.c: (_get_global_simple_cache),
        (_get_outer_font_cache), (_get_inner_font_cache),
        (_cairo_unlock_global_image_glyph_cache),
        (_cairo_font_reset_static_data):
        * src/cairo-ft-font.c: (_cairo_ft_font_reset_static_data):
        * src/cairo-xlib-screen.c: (_cairo_xlib_close_display),
        (_cairo_xlib_screen_info_reset),
        (_cairo_xlib_screen_reset_static_data):
        * src/cairo-xlib-surface.c: (_unlock_xlib_glyphset_caches),
        (_destroy_glyphset_cache_recurse),
        (_cairo_xlib_surface_reset_static_data): Implement
        reset_static_data in all modules as required.

        * test/xlib-surface.c: (main):
        * test/cairo-test.h:
        * test/cairo-test.c: (cairo_test_for_target),
        (cairo_test_expecting): Call cairo_debug_reset_static_data and
        FcFini so that we can have all tests be valgrind-clean with
        respect to memory leaks and still-reachable data.


Index: ChangeLog
===================================================================
RCS file: /cvs/cairo/cairo/ChangeLog,v
retrieving revision 1.806
retrieving revision 1.807
diff -u -d -r1.806 -r1.807
--- ChangeLog	1 Aug 2005 18:45:42 -0000	1.806
+++ ChangeLog	1 Aug 2005 20:33:47 -0000	1.807
@@ -1,3 +1,45 @@
+2005-08-01  Carl Worth  <cworth at cworth.org>
+
+	* src/cairo-debug.h: New public header file.
+
+	* src/cairo-debug.c: (cairo_debug_reset_static_data): New function
+	to reset all static data (eg. caches) to their initial state.
+	
+	* Makefile.am: Fix check-valgrind target to depend on the 'all'
+	target.
+	
+	* configure.in: Add check for a new, proposed, XrmFinalize
+	function.
+	
+	* src/Makefile.am: Add cairo-debug.c.
+	
+	* src/cairo.h:
+	* src/cairo-features.h.in: Move the definition of
+	CAIRO_BEGIN_DECLS to cairo-features.h so that it can be shared
+	between public header files, and so that it doesn't clutter
+	cairo.h
+
+	* src/cairoint.h:
+	* src/cairo-font.c: (_get_global_simple_cache),
+	(_get_outer_font_cache), (_get_inner_font_cache),
+	(_cairo_unlock_global_image_glyph_cache),
+	(_cairo_font_reset_static_data):
+	* src/cairo-ft-font.c: (_cairo_ft_font_reset_static_data):
+	* src/cairo-xlib-screen.c: (_cairo_xlib_close_display),
+	(_cairo_xlib_screen_info_reset),
+	(_cairo_xlib_screen_reset_static_data):
+	* src/cairo-xlib-surface.c: (_unlock_xlib_glyphset_caches),
+	(_destroy_glyphset_cache_recurse),
+	(_cairo_xlib_surface_reset_static_data): Implement
+	reset_static_data in all modules as required.
+
+	* test/xlib-surface.c: (main):
+	* test/cairo-test.h:
+	* test/cairo-test.c: (cairo_test_for_target),
+	(cairo_test_expecting): Call cairo_debug_reset_static_data and
+	FcFini so that we can have all tests be valgrind-clean with
+	respect to memory leaks and still-reachable data.
+
 2005-08-01  Owen Taylor  <otaylor at redhat.com>
 
 	* src/cairo.h src/cairoint.h src/cairo-surface.c:
@@ -642,6 +684,19 @@
 
 2005-07-18  Carl Worth  <cworth at 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 at cworth.org>
+
 	* configure.in: Add -head to CAIRO_VERSION after tagging with
 	SNAPSHOT_0_5_2.
 

Index: Makefile.am
===================================================================
RCS file: /cvs/cairo/cairo/Makefile.am,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- Makefile.am	28 Jul 2005 17:43:27 -0000	1.12
+++ Makefile.am	1 Aug 2005 20:33:47 -0000	1.13
@@ -15,6 +15,9 @@
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = cairo.pc
 
+check-valgrind: all
+	$(MAKE) -C test check-valgrind
+
 DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
 
 # Some custom targets to make it easier to release things.

Index: configure.in
===================================================================
RCS file: /cvs/cairo/cairo/configure.in,v
retrieving revision 1.116
retrieving revision 1.117
diff -u -d -r1.116 -r1.117
--- configure.in	31 Jul 2005 18:19:47 -0000	1.116
+++ configure.in	1 Aug 2005 20:33:47 -0000	1.117
@@ -61,6 +61,13 @@
       XRENDER_LIBS="$X_LIBS -lXrender -lXext -lX11 $X_EXTRA_LIBS"
       use_xlib=yes], [
 		use_xlib="no (requires Xrender http://freedesktop.org/Software/xlibs)"])])
+  save_cflags="$CFLAGS"
+  save_libs="$LIBS"
+  CFLAGS="$CFLAGS $XRENDER_CFLAGS"
+  LIBS="$LIBS $XRENDER_LIBS"
+  AC_CHECK_FUNCS(XrmFinalize)
+  CFLAGS="$save_cflags"
+  LIBS="$save_libs"
 fi
 
 AM_CONDITIONAL(CAIRO_HAS_XLIB_SURFACE, test "x$use_xlib" = "xyes")




More information about the cairo-commit mailing list