[cairo-commit] test/a8-mask.c test/bitmap-font.c test/cairo-test.h test/caps-joins-alpha.c test/caps-joins.c test/caps-sub-paths.c test/clip-all.c test/clip-fill-rule.c test/clip-fill-rule-pixel-aligned.c test/clip-nesting.c test/clip-operator.c test/clip-twice.c test/composite-integer-translate-over.c test/composite-integer-translate-over-repeat.c test/composite-integer-translate-source.c test/create-from-png.c test/create-from-png-stream.c test/dash-caps-joins.c test/dash-offset-negative.c test/dash-scale.c test/dash-zero-length.c test/degenerate-path.c test/device-offset.c test/device-offset-positive.c test/extend-reflect.c test/fill-and-stroke-alpha-add.c test/fill-and-stroke-alpha.c test/fill-and-stroke.c test/fill-rule.c test/filter-nearest-offset.c test/ft-font-create-for-ft-face.c test/ft-text-antialias-none.c test/ft-text-vertical-layout.c test/get-and-set.c test/get-group-target.c test/glyph-cache-pressure.c test/gradient-alpha.c test/leaky-dash.c test/leaky-polygon.c test/linear-gradient.c test/line-width.c test/line-width-scale.c test/mask.c test/mask-ctm.c test/mask-surface-ctm.c test/move-to-show-surface.c test/new-sub-path.c test/nil-surface.c test/operator-clear.c test/operator-source.c test/paint.c test/paint-source-alpha.c test/paint-with-alpha.c test/path-data.c test/pixman-rotate.c test/push-group.c test/rectangle-rounding-error.c test/rel-path.c test/scale-source-surface-paint.c test/select-font-face.c test/select-font-no-show-text.c test/self-copy.c test/self-intersecting.c test/set-source.c test/show-glyphs-many.c test/show-text-current-point.c test/source-clip.c test/source-surface-scale-paint.c test/surface-finish-twice.c test/surface-pattern.c test/text-antialias-gray.c test/text-antialias-none.c test/text-antialias-subpixel.c test/text-cache-crash.c test/text-pattern.c test/text-rotate.c test/transforms.c test/translate-show-surface.c test/trap-clip.c test/unantialiased-shapes.c test/unbounded-operator.c test/zero-alpha.c

Behdad Esfahbod behdad at kemper.freedesktop.org
Thu Jul 13 09:58:37 PDT 2006


 test/a8-mask.c                                 |    2 ++
 test/bitmap-font.c                             |    2 ++
 test/cairo-test.h                              |    1 -
 test/caps-joins-alpha.c                        |    2 ++
 test/caps-joins.c                              |    2 ++
 test/caps-sub-paths.c                          |    2 ++
 test/clip-all.c                                |    2 ++
 test/clip-fill-rule-pixel-aligned.c            |    2 ++
 test/clip-fill-rule.c                          |    2 ++
 test/clip-nesting.c                            |    2 ++
 test/clip-operator.c                           |    2 ++
 test/clip-twice.c                              |    2 ++
 test/composite-integer-translate-over-repeat.c |    2 ++
 test/composite-integer-translate-over.c        |    2 ++
 test/composite-integer-translate-source.c      |    2 ++
 test/create-from-png-stream.c                  |    2 ++
 test/create-from-png.c                         |    2 ++
 test/dash-caps-joins.c                         |    2 ++
 test/dash-offset-negative.c                    |    2 ++
 test/dash-scale.c                              |    2 ++
 test/dash-zero-length.c                        |    2 ++
 test/degenerate-path.c                         |    2 ++
 test/device-offset-positive.c                  |    2 ++
 test/device-offset.c                           |    2 ++
 test/extend-reflect.c                          |    2 ++
 test/fill-and-stroke-alpha-add.c               |    2 ++
 test/fill-and-stroke-alpha.c                   |    2 ++
 test/fill-and-stroke.c                         |    2 ++
 test/fill-rule.c                               |    2 ++
 test/filter-nearest-offset.c                   |    2 ++
 test/ft-font-create-for-ft-face.c              |    2 ++
 test/ft-text-antialias-none.c                  |    2 ++
 test/ft-text-vertical-layout.c                 |    2 ++
 test/get-and-set.c                             |    2 ++
 test/get-group-target.c                        |    2 ++
 test/glyph-cache-pressure.c                    |    2 ++
 test/gradient-alpha.c                          |    2 ++
 test/leaky-dash.c                              |    2 ++
 test/leaky-polygon.c                           |    2 ++
 test/line-width-scale.c                        |    2 ++
 test/line-width.c                              |    2 ++
 test/linear-gradient.c                         |    2 ++
 test/mask-ctm.c                                |    2 ++
 test/mask-surface-ctm.c                        |    2 ++
 test/mask.c                                    |    2 ++
 test/move-to-show-surface.c                    |    2 ++
 test/new-sub-path.c                            |    2 ++
 test/nil-surface.c                             |    2 ++
 test/operator-clear.c                          |    2 ++
 test/operator-source.c                         |    2 ++
 test/paint-source-alpha.c                      |    2 ++
 test/paint-with-alpha.c                        |    2 ++
 test/paint.c                                   |    2 ++
 test/path-data.c                               |    2 ++
 test/pixman-rotate.c                           |    2 ++
 test/push-group.c                              |    2 ++
 test/rectangle-rounding-error.c                |    2 ++
 test/rel-path.c                                |    2 ++
 test/scale-source-surface-paint.c              |    2 ++
 test/select-font-face.c                        |    2 ++
 test/select-font-no-show-text.c                |    2 ++
 test/self-copy.c                               |    2 ++
 test/self-intersecting.c                       |    2 ++
 test/set-source.c                              |    2 ++
 test/show-glyphs-many.c                        |    2 ++
 test/show-text-current-point.c                 |    2 ++
 test/source-clip.c                             |    2 ++
 test/source-surface-scale-paint.c              |    2 ++
 test/surface-finish-twice.c                    |    2 ++
 test/surface-pattern.c                         |    2 ++
 test/text-antialias-gray.c                     |    2 ++
 test/text-antialias-none.c                     |    2 ++
 test/text-antialias-subpixel.c                 |    2 ++
 test/text-cache-crash.c                        |    2 ++
 test/text-pattern.c                            |    2 ++
 test/text-rotate.c                             |    2 ++
 test/transforms.c                              |    2 ++
 test/translate-show-surface.c                  |    2 ++
 test/trap-clip.c                               |    2 ++
 test/unantialiased-shapes.c                    |    2 ++
 test/unbounded-operator.c                      |    2 ++
 test/zero-alpha.c                              |    2 ++
 82 files changed, 162 insertions(+), 1 deletion(-)

New commits:
diff-tree cf1b23a4c57d436098619443068611a48b88187e (from f8eeca97684f7c8eba7b918c34fe5ccbf32e2f5f)
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Thu Jul 13 12:58:24 2006 -0400

    Add prototype for draw in each test file and remove it from the header.

diff --git a/test/a8-mask.c b/test/a8-mask.c
index b619025..e21b9df 100644
--- a/test/a8-mask.c
+++ b/test/a8-mask.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "a8-mask",
     "test masks of CAIRO_FORMAT_A8"
diff --git a/test/bitmap-font.c b/test/bitmap-font.c
index 3707a35..bf8f109 100644
--- a/test/bitmap-font.c
+++ b/test/bitmap-font.c
@@ -35,6 +35,8 @@
 #define FONT "6x13.pcf"
 #define TEXT_SIZE 13
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "bitmap-font",
     "Test drawing with a font consisting only of bitmaps",
diff --git a/test/cairo-test.h b/test/cairo-test.h
index fbcbf29..3694f35 100644
--- a/test/cairo-test.h
+++ b/test/cairo-test.h
@@ -72,7 +72,6 @@ typedef enum cairo_test_status {
 } cairo_test_status_t;
 
 typedef cairo_test_status_t  (cairo_test_draw_function_t) (cairo_t *cr, int width, int height);
-static cairo_test_draw_function_t draw;
 
 typedef struct _cairo_test {
     const char *name;
diff --git a/test/caps-joins-alpha.c b/test/caps-joins-alpha.c
index 969a9a5..cdf6086 100644
--- a/test/caps-joins-alpha.c
+++ b/test/caps-joins-alpha.c
@@ -30,6 +30,8 @@
 #define SIZE 		(5 * LINE_WIDTH)
 #define PAD		(2 * LINE_WIDTH)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "caps-joins-alpha",
     "Test caps and joins with some source alpha",
diff --git a/test/caps-joins.c b/test/caps-joins.c
index 9b2055a..c7306a0 100644
--- a/test/caps-joins.c
+++ b/test/caps-joins.c
@@ -29,6 +29,8 @@
 #define SIZE 		(5 * LINE_WIDTH)
 #define PAD		(2 * LINE_WIDTH)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "caps-joins",
     "Test caps and joins",
diff --git a/test/caps-sub-paths.c b/test/caps-sub-paths.c
index c42c7cd..73af8aa 100644
--- a/test/caps-sub-paths.c
+++ b/test/caps-sub-paths.c
@@ -30,6 +30,8 @@
    https://bugs.freedesktop.org/show_bug.cgi?id=4205
 */
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "caps-sub-paths",
     "Test that sub-paths receive caps.",
diff --git a/test/clip-all.c b/test/clip-all.c
index 4046073..2ff883d 100644
--- a/test/clip-all.c
+++ b/test/clip-all.c
@@ -28,6 +28,8 @@
 #define SIZE 10
 #define CLIP_SIZE 2
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "clip-all",
     "Test clipping with everything clipped out",
diff --git a/test/clip-fill-rule-pixel-aligned.c b/test/clip-fill-rule-pixel-aligned.c
index 07b9efe..c2bb08b 100644
--- a/test/clip-fill-rule-pixel-aligned.c
+++ b/test/clip-fill-rule-pixel-aligned.c
@@ -28,6 +28,8 @@
 #define PAD 1
 #define SIZE 5
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "clip-fill-rule-pixel-aligned",
     "Tests interaction of clipping and cairo_set_fill_rule with a pixel-aligned path",
diff --git a/test/clip-fill-rule.c b/test/clip-fill-rule.c
index 84619d7..5012b3b 100644
--- a/test/clip-fill-rule.c
+++ b/test/clip-fill-rule.c
@@ -27,6 +27,8 @@
 
 #define STAR_SIZE 20
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "clip-fill-rule",
     "Tests interaction of clipping with cairo_set_fill_rule",
diff --git a/test/clip-nesting.c b/test/clip-nesting.c
index 66c277b..2d53782 100644
--- a/test/clip-nesting.c
+++ b/test/clip-nesting.c
@@ -31,6 +31,8 @@
 #define BORDER 10
 #define LINE_WIDTH 20
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "clip-nesting",
     "Test clipping with multiple contexts for the same surface",
diff --git a/test/clip-operator.c b/test/clip-operator.c
index 44ea6f4..52cbba6 100644
--- a/test/clip-operator.c
+++ b/test/clip-operator.c
@@ -130,6 +130,8 @@ static void (*draw_funcs[])(cairo_t *cr,
 #define IMAGE_WIDTH (N_OPERATORS * (WIDTH + PAD) + PAD)
 #define IMAGE_HEIGHT (ARRAY_SIZE (draw_funcs) * (HEIGHT + PAD) + PAD)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "clip-operator",
     "Surface clipping with different operators",
diff --git a/test/clip-twice.c b/test/clip-twice.c
index d634581..71a3c14 100644
--- a/test/clip-twice.c
+++ b/test/clip-twice.c
@@ -28,6 +28,8 @@
 #define WIDTH 64
 #define HEIGHT 64
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "clip-twice",
     "Verifies that the clip mask is updated correctly when it constructed by setting the clip path twice.",
diff --git a/test/composite-integer-translate-over-repeat.c b/test/composite-integer-translate-over-repeat.c
index 17eafa1..e0978ff 100644
--- a/test/composite-integer-translate-over-repeat.c
+++ b/test/composite-integer-translate-over-repeat.c
@@ -6,6 +6,8 @@
 #define SIZE2 20
 #define OFFSET 10
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "composite-integer-translate-over-repeat",
     "Test simple compositing: integer-translation 32->32 OVER, with repeat",
diff --git a/test/composite-integer-translate-over.c b/test/composite-integer-translate-over.c
index 84c7a04..9c45621 100644
--- a/test/composite-integer-translate-over.c
+++ b/test/composite-integer-translate-over.c
@@ -7,6 +7,8 @@
 #define SCALE 1.5
 const char	png_filename[]	= "romedalen.png";
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "composite-integer-translate-over",
     "Test simple compositing: integer-translation 32->32 OVER",
diff --git a/test/composite-integer-translate-source.c b/test/composite-integer-translate-source.c
index f2b8086..af0f587 100644
--- a/test/composite-integer-translate-source.c
+++ b/test/composite-integer-translate-source.c
@@ -7,6 +7,8 @@
 
 const char	png_filename[]	= "romedalen.png";
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "composite-integer-translate-source",
     "Test simple compositing: integer-translation 32->32 SOURCE",
diff --git a/test/create-from-png-stream.c b/test/create-from-png-stream.c
index 2eaeb9f..4e8a29d 100644
--- a/test/create-from-png-stream.c
+++ b/test/create-from-png-stream.c
@@ -31,6 +31,8 @@
 #define WIDTH 2
 #define HEIGHT 2
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "create-from-png-stream",
     "Tests the creation of an image surface from a PNG using a FILE *",
diff --git a/test/create-from-png.c b/test/create-from-png.c
index da03a11..4aefc34 100644
--- a/test/create-from-png.c
+++ b/test/create-from-png.c
@@ -30,6 +30,8 @@
 #define WIDTH 2
 #define HEIGHT 2
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "create-from-png",
     "Tests the creation of an image surface from a PNG file",
diff --git a/test/dash-caps-joins.c b/test/dash-caps-joins.c
index 4dd9868..722a59d 100644
--- a/test/dash-caps-joins.c
+++ b/test/dash-caps-joins.c
@@ -35,6 +35,8 @@
 #define SIZE 		(5 * LINE_WIDTH)
 #define PAD		(2 * LINE_WIDTH)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "dash-caps-joins",
     "Test caps and joins when dashing",
diff --git a/test/dash-offset-negative.c b/test/dash-offset-negative.c
index a2d0269..539e3cd 100644
--- a/test/dash-offset-negative.c
+++ b/test/dash-offset-negative.c
@@ -34,6 +34,8 @@
  *	https://bugs.freedesktop.org/show_bug.cgi?id=2729
  */
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "dash-offset-negative",
     "Tests cairo_set_dash with a negative offset",
diff --git a/test/dash-scale.c b/test/dash-scale.c
index 36ac818..b845dcf 100644
--- a/test/dash-scale.c
+++ b/test/dash-scale.c
@@ -29,6 +29,8 @@
 #define SIZE 		(5 * LINE_WIDTH)
 #define PAD		(2 * LINE_WIDTH)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "dash-scale",
     "Test interactions of cairo_set_dash and cairo_scale, (in particular with a non-uniformly scaled pen)",
diff --git a/test/dash-zero-length.c b/test/dash-zero-length.c
index 1c9361e..6e9854a 100644
--- a/test/dash-zero-length.c
+++ b/test/dash-zero-length.c
@@ -33,6 +33,8 @@
  * on invisible lines.
  */
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "dash-zero-length",
     "Tests cairo_set_dash with zero length",
diff --git a/test/degenerate-path.c b/test/degenerate-path.c
index c4272cc..ab6a34d 100644
--- a/test/degenerate-path.c
+++ b/test/degenerate-path.c
@@ -28,6 +28,8 @@
 #define IMAGE_WIDTH 40
 #define IMAGE_HEIGHT 22
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "degenerate-path",
     "Tests the behaviour of degenerate paths with different cap types",
diff --git a/test/device-offset-positive.c b/test/device-offset-positive.c
index 3d4773d..9080612 100644
--- a/test/device-offset-positive.c
+++ b/test/device-offset-positive.c
@@ -29,6 +29,8 @@
 #define SIZE 10
 #define PAD 2
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "device-offset-positive",
     "Simple test using a surface with a positive device-offset as a source.",
diff --git a/test/device-offset.c b/test/device-offset.c
index 1b92c8a..5f0eb80 100644
--- a/test/device-offset.c
+++ b/test/device-offset.c
@@ -29,6 +29,8 @@
 #define SIZE 10
 #define PAD 2
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "device-offset",
     "Simple test using a surface with a negative device-offset as a source.",
diff --git a/test/extend-reflect.c b/test/extend-reflect.c
index 1d53af9..297c475 100644
--- a/test/extend-reflect.c
+++ b/test/extend-reflect.c
@@ -6,6 +6,8 @@
 #define OFFSET 50
 const char	png_filename[]	= "romedalen.png";
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "extend-reflect",
     "Test CAIRO_EXTEND_REFLECT for surface patterns"
diff --git a/test/fill-and-stroke-alpha-add.c b/test/fill-and-stroke-alpha-add.c
index 9b672d7..0a3ebbc 100644
--- a/test/fill-and-stroke-alpha-add.c
+++ b/test/fill-and-stroke-alpha-add.c
@@ -29,6 +29,8 @@
 #define PAD 2
 #define SIZE 10
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "fill-and-stroke-alpha-add",
     "Use a group to fill/stroke a path (each with different alpha) using DEST_OUT and ADD to combine",
diff --git a/test/fill-and-stroke-alpha.c b/test/fill-and-stroke-alpha.c
index 170fafe..1d01151 100644
--- a/test/fill-and-stroke-alpha.c
+++ b/test/fill-and-stroke-alpha.c
@@ -29,6 +29,8 @@
 #define PAD 2
 #define SIZE 10
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "fill-and-stroke-alpha",
     "Use a group to fill/stroke a path then blend the result with alpha onto the destination",
diff --git a/test/fill-and-stroke.c b/test/fill-and-stroke.c
index 382e9f7..345b51d 100644
--- a/test/fill-and-stroke.c
+++ b/test/fill-and-stroke.c
@@ -28,6 +28,8 @@
 #define PAD 2
 #define SIZE 10
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "fill-and-stroke",
     "Tests using cairo_fill_preserve/cairo_stroke to fill/stroke the same path",
diff --git a/test/fill-rule.c b/test/fill-rule.c
index f31c70d..6b186ef 100644
--- a/test/fill-rule.c
+++ b/test/fill-rule.c
@@ -66,6 +66,8 @@
 #define LITTLE_STAR_SIZE 20
 #define BIG_STAR_SIZE    80
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "fill-rule",
     "Tests cairo_set_full_rule with some star shapes",
diff --git a/test/filter-nearest-offset.c b/test/filter-nearest-offset.c
index 01db5e8..2727f56 100644
--- a/test/filter-nearest-offset.c
+++ b/test/filter-nearest-offset.c
@@ -34,6 +34,8 @@
 #define IMAGE_WIDTH  (PAD + STEPS * (STAMP_WIDTH  + PAD) + PAD)
 #define IMAGE_HEIGHT (PAD + STEPS * (STAMP_HEIGHT + PAD) + PAD)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "filter-nearest-offset",
     "Test sampling offset of CAIRO_FILTER_NEAREST"
diff --git a/test/ft-font-create-for-ft-face.c b/test/ft-font-create-for-ft-face.c
index 196bacc..64a3224 100644
--- a/test/ft-font-create-for-ft-face.c
+++ b/test/ft-font-create-for-ft-face.c
@@ -26,6 +26,8 @@
 #include "cairo-test.h"
 #include <cairo-ft.h>
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "ft-font-create-for-ft-face",
     "Simple test to verify that cairo_ft_font_create_for_ft_face doesn't crash.",
diff --git a/test/ft-text-antialias-none.c b/test/ft-text-antialias-none.c
index 4294f28..55a6fa3 100644
--- a/test/ft-text-antialias-none.c
+++ b/test/ft-text-antialias-none.c
@@ -33,6 +33,8 @@
 #define HEIGHT 30
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "ft-text-antialias-none",
     "Tests text rendering with no antialiasing",
diff --git a/test/ft-text-vertical-layout.c b/test/ft-text-vertical-layout.c
index 3502b6c..d7638ee 100644
--- a/test/ft-text-vertical-layout.c
+++ b/test/ft-text-vertical-layout.c
@@ -33,6 +33,8 @@
 #define HEIGHT 30
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "ft-text-vertical-layout",
     "Tests text rendering for vertical layout",
diff --git a/test/get-and-set.c b/test/get-and-set.c
index 5589b30..ae17cc8 100644
--- a/test/get-and-set.c
+++ b/test/get-and-set.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "get-and-set",
     "Tests calls to the most trivial cairo_get and cairo_set functions",
diff --git a/test/get-group-target.c b/test/get-group-target.c
index 009087b..73a2d95 100644
--- a/test/get-group-target.c
+++ b/test/get-group-target.c
@@ -28,6 +28,8 @@
 #define SIZE 8
 #define PAD 2
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "get-group-target",
     "Test of both cairo_get_group_target and cairo_surface_get_device_offset",
diff --git a/test/glyph-cache-pressure.c b/test/glyph-cache-pressure.c
index 3661fa3..5b5e6c4 100644
--- a/test/glyph-cache-pressure.c
+++ b/test/glyph-cache-pressure.c
@@ -49,6 +49,8 @@
  *   _cairo_sacled_font_freeze/thaw_cache functions for this).
  */
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "glyph-cache-pressure",
     "Ensure that all backends behave well under artificial glyph cache pressure",
diff --git a/test/gradient-alpha.c b/test/gradient-alpha.c
index 1ec1559..a56b507 100644
--- a/test/gradient-alpha.c
+++ b/test/gradient-alpha.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "gradient-alpha",
     "Tests drawing of a gradient with various alpha values in the color stops",
diff --git a/test/leaky-dash.c b/test/leaky-dash.c
index 961c620..d78fac5 100644
--- a/test/leaky-dash.c
+++ b/test/leaky-dash.c
@@ -34,6 +34,8 @@
 #define WIDTH 71
 #define HEIGHT 28
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "leaky-dash",
     "Exercises bug #4863 in which a dashed stroke leaks into half the rectangle being filled"
diff --git a/test/leaky-polygon.c b/test/leaky-polygon.c
index 69884e6..2526860 100644
--- a/test/leaky-polygon.c
+++ b/test/leaky-polygon.c
@@ -56,6 +56,8 @@
 #define WIDTH 21
 #define HEIGHT 21
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "leaky-polygon",
     "Exercises a corner case in the trapezoid rasterization in which pixels outside the trapezoids received a non-zero alpha",
diff --git a/test/line-width-scale.c b/test/line-width-scale.c
index b06e982..eada6c6 100644
--- a/test/line-width-scale.c
+++ b/test/line-width-scale.c
@@ -52,6 +52,8 @@
 #define WIDTH (XSCALE * SPLINE * 6.0)
 #define HEIGHT (YSCALE * SPLINE * 2.0)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "line-width-scale",
     "Tests interaction of cairo_set_line_width with cairo_scale",
diff --git a/test/line-width.c b/test/line-width.c
index 6d112c9..ad51c74 100644
--- a/test/line-width.c
+++ b/test/line-width.c
@@ -30,6 +30,8 @@
 #define IMAGE_WIDTH 2 * LINE_LENGTH + 6
 #define IMAGE_HEIGHT ((LINES+4)*LINES)/2 + 2
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "line-width",
     "Tests cairo_set_line_width",
diff --git a/test/linear-gradient.c b/test/linear-gradient.c
index fd8da68..7681cbf 100644
--- a/test/linear-gradient.c
+++ b/test/linear-gradient.c
@@ -54,6 +54,8 @@ static const int n_stops[] = { 2, 3 };
 #define WIDTH  N_GRADIENT_ANGLES * UNIT_SIZE + (N_GRADIENT_ANGLES + 1) * PAD
 #define HEIGHT N_N_STOPS * N_ROTATE_ANGLES * UNIT_SIZE + (N_N_STOPS * N_ROTATE_ANGLES + 1) * PAD
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "linear-gradient",
     "Tests the drawing of linear gradients",
diff --git a/test/mask-ctm.c b/test/mask-ctm.c
index 8c5d4bd..d693990 100644
--- a/test/mask-ctm.c
+++ b/test/mask-ctm.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "mask-ctm",
     "Test that cairo_mask is affected properly by the CTM",
diff --git a/test/mask-surface-ctm.c b/test/mask-surface-ctm.c
index ea807f9..02384c6 100644
--- a/test/mask-surface-ctm.c
+++ b/test/mask-surface-ctm.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "mask-surface-ctm",
     "Test that cairo_mask_surface is affected properly by the CTM",
diff --git a/test/mask.c b/test/mask.c
index faaecd6..ed32819 100644
--- a/test/mask.c
+++ b/test/mask.c
@@ -179,6 +179,8 @@ static void (*clip_funcs[])(cairo_t *cr,
 #define IMAGE_WIDTH (ARRAY_SIZE (pattern_funcs) * (WIDTH + PAD) + PAD)
 #define IMAGE_HEIGHT (ARRAY_SIZE (mask_funcs) * ARRAY_SIZE (clip_funcs) * (HEIGHT + PAD) + PAD)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "mask",
     "Tests of cairo_mask",
diff --git a/test/move-to-show-surface.c b/test/move-to-show-surface.c
index 2b5cc40..8693207 100644
--- a/test/move-to-show-surface.c
+++ b/test/move-to-show-surface.c
@@ -45,6 +45,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "move-to-show-surface",
     "Tests calls to cairo_show_surface after cairo_move_to",
diff --git a/test/new-sub-path.c b/test/new-sub-path.c
index bff3a76..93580ce 100644
--- a/test/new-sub-path.c
+++ b/test/new-sub-path.c
@@ -27,6 +27,8 @@
 
 #define SIZE 10
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "new-sub-path",
     "Test the cairo_new_sub_path call",
diff --git a/test/nil-surface.c b/test/nil-surface.c
index 5819cb0..80cb290 100644
--- a/test/nil-surface.c
+++ b/test/nil-surface.c
@@ -32,6 +32,8 @@
  *	https://bugs.freedesktop.org/show_bug.cgi?id=3915
  */
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "nil-surface",
     "Test that nil surfaces do not make cairo crash.",
diff --git a/test/operator-clear.c b/test/operator-clear.c
index 89fdd3e..575ce1d 100644
--- a/test/operator-clear.c
+++ b/test/operator-clear.c
@@ -146,6 +146,8 @@ static void (*draw_funcs[])(cairo_t *cr,
 #define IMAGE_WIDTH (ARRAY_SIZE (pattern_funcs) * (WIDTH + PAD) + PAD)
 #define IMAGE_HEIGHT (ARRAY_SIZE (draw_funcs) * (HEIGHT + PAD) + PAD)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "operator-clear",
     "Test of CAIRO_OPERATOR_CLEAR",
diff --git a/test/operator-source.c b/test/operator-source.c
index 17c0457..6784622 100644
--- a/test/operator-source.c
+++ b/test/operator-source.c
@@ -185,6 +185,8 @@ static void (*draw_funcs[])(cairo_t *cr,
 #define IMAGE_WIDTH (ARRAY_SIZE (pattern_funcs) * (WIDTH + PAD) + PAD)
 #define IMAGE_HEIGHT (ARRAY_SIZE (draw_funcs) * (HEIGHT + PAD) + PAD)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "operator-source",
     "Test of CAIRO_OPERATOR_SOURCE",
diff --git a/test/paint-source-alpha.c b/test/paint-source-alpha.c
index afef333..36a158b 100644
--- a/test/paint-source-alpha.c
+++ b/test/paint-source-alpha.c
@@ -26,6 +26,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "paint-source-alpha",
     "Simple test of cairo_paint with a source surface with non-opaque alpha",
diff --git a/test/paint-with-alpha.c b/test/paint-with-alpha.c
index 81e2138..864b956 100644
--- a/test/paint-with-alpha.c
+++ b/test/paint-with-alpha.c
@@ -26,6 +26,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "paint-with-alpha",
     "Simple test of cairo_paint_with_alpha",
diff --git a/test/paint.c b/test/paint.c
index e76a545..0149db6 100644
--- a/test/paint.c
+++ b/test/paint.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "paint",
     "Test calls to cairo_paint",
diff --git a/test/path-data.c b/test/path-data.c
index 9868205..903e92c 100644
--- a/test/path-data.c
+++ b/test/path-data.c
@@ -26,6 +26,8 @@
 #include <stdlib.h>
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "path-data",
     "Tests calls to path_data functions: cairo_copy_path_data, cairo_copy_path_data_flat, and cairo_append_path_data",
diff --git a/test/pixman-rotate.c b/test/pixman-rotate.c
index e02d918..425f883 100644
--- a/test/pixman-rotate.c
+++ b/test/pixman-rotate.c
@@ -13,6 +13,8 @@
 #define IMAGE_WIDTH	(3 * WIDTH)
 #define IMAGE_HEIGHT	IMAGE_WIDTH
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "pixman-rotate",
     "Exposes pixman off-by-one error when rotating",
diff --git a/test/push-group.c b/test/push-group.c
index f777786..738df6f 100644
--- a/test/push-group.c
+++ b/test/push-group.c
@@ -32,6 +32,8 @@
 #define WIDTH (UNIT_SIZE + PAD) + PAD
 #define HEIGHT (UNIT_SIZE + PAD) + PAD
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "push-group",
     "Verify that cairo_push_group works.",
diff --git a/test/rectangle-rounding-error.c b/test/rectangle-rounding-error.c
index 4d0d35e..2cfbe9c 100644
--- a/test/rectangle-rounding-error.c
+++ b/test/rectangle-rounding-error.c
@@ -30,6 +30,8 @@
  *      https://bugs.freedesktop.org/show_bug.cgi?id=4137
  */
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "rectangle-rounding-error",
     "This demonstrates (or not) a rounding error that causes a gap between "
diff --git a/test/rel-path.c b/test/rel-path.c
index d82e62a..165c10e 100644
--- a/test/rel-path.c
+++ b/test/rel-path.c
@@ -26,6 +26,8 @@
 
 #define SIZE 10
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "rel-path",
     "Tests calls to various relative path functions",
diff --git a/test/scale-source-surface-paint.c b/test/scale-source-surface-paint.c
index d98b260..1fbe0c4 100644
--- a/test/scale-source-surface-paint.c
+++ b/test/scale-source-surface-paint.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "scale-source-surface-paint",
     "Test call sequence: cairo_scale; cairo_set_source_surface; cairo_paint",
diff --git a/test/select-font-face.c b/test/select-font-face.c
index 20ade00..30daf25 100644
--- a/test/select-font-face.c
+++ b/test/select-font-face.c
@@ -27,6 +27,8 @@
 
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "select-font-face",
     "Tests using cairo_select_font_face to draw text in different faces",
diff --git a/test/select-font-no-show-text.c b/test/select-font-no-show-text.c
index 74bc1e9..c0e4f46 100644
--- a/test/select-font-no-show-text.c
+++ b/test/select-font-no-show-text.c
@@ -41,6 +41,8 @@
 #include <math.h>
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "select-font-no-show-text",
     "Test calling cairo_select_font_face but never drawing text.",
diff --git a/test/self-copy.c b/test/self-copy.c
index c872f7f..0c23855 100644
--- a/test/self-copy.c
+++ b/test/self-copy.c
@@ -29,6 +29,8 @@
 
 #define SIZE 40
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "self-copy",
     "Test copying from a surface to itself with a clip",
diff --git a/test/self-intersecting.c b/test/self-intersecting.c
index 77547cb..870783e 100644
--- a/test/self-intersecting.c
+++ b/test/self-intersecting.c
@@ -44,6 +44,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "self-intersecting",
     "Test strokes of self-intersecting paths"
diff --git a/test/set-source.c b/test/set-source.c
index 87953b6..7737897 100644
--- a/test/set-source.c
+++ b/test/set-source.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "set-source",
     "Tests calls to various set_source functions",
diff --git a/test/show-glyphs-many.c b/test/show-glyphs-many.c
index 95cca92..f9137e6 100644
--- a/test/show-glyphs-many.c
+++ b/test/show-glyphs-many.c
@@ -78,6 +78,8 @@
  * Sans Mono. */
 #define GLYPH_INDEX 48
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "show-glyphs-many",
     "Test that cairo_show_glyps works when handed 'many' glyphs",
diff --git a/test/show-text-current-point.c b/test/show-text-current-point.c
index d551ea4..ebd3644 100644
--- a/test/show-text-current-point.c
+++ b/test/show-text-current-point.c
@@ -27,6 +27,8 @@
 
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "show-text-current-point",
     "Test that cairo_show_text adjusts the current point properly",
diff --git a/test/source-clip.c b/test/source-clip.c
index e8f6dea..4243bf0 100644
--- a/test/source-clip.c
+++ b/test/source-clip.c
@@ -29,6 +29,8 @@
 
 #define SIZE 50
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "source-clip",
     "Test using a surface with an active clip as a source",
diff --git a/test/source-surface-scale-paint.c b/test/source-surface-scale-paint.c
index f1da8c5..8c3096a 100644
--- a/test/source-surface-scale-paint.c
+++ b/test/source-surface-scale-paint.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "source-surface-scale-paint",
     "Test call sequence: cairo_set_source_surface; cairo_scale; cairo_paint",
diff --git a/test/surface-finish-twice.c b/test/surface-finish-twice.c
index 9a6a028..62acf71 100644
--- a/test/surface-finish-twice.c
+++ b/test/surface-finish-twice.c
@@ -42,6 +42,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "surface-finish-twice",
     "Test to exercise a crash when calling cairo_surface_finish twice on the same surface.",
diff --git a/test/surface-pattern.c b/test/surface-pattern.c
index 3124d76..8fe40e6 100644
--- a/test/surface-pattern.c
+++ b/test/surface-pattern.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "surface-pattern",
     "Tests use of a surface pattern",
diff --git a/test/text-antialias-gray.c b/test/text-antialias-gray.c
index 1a044eb..0c9f30d 100644
--- a/test/text-antialias-gray.c
+++ b/test/text-antialias-gray.c
@@ -29,6 +29,8 @@
 #define HEIGHT 22
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "text-antialias-gray",
     "Tests text rendering with grayscale antialiasing",
diff --git a/test/text-antialias-none.c b/test/text-antialias-none.c
index 4d9d656..32f7a0e 100644
--- a/test/text-antialias-none.c
+++ b/test/text-antialias-none.c
@@ -29,6 +29,8 @@
 #define HEIGHT 22
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "text-antialias-none",
     "Tests text rendering with no antialiasing",
diff --git a/test/text-antialias-subpixel.c b/test/text-antialias-subpixel.c
index b78007c..aba9890 100644
--- a/test/text-antialias-subpixel.c
+++ b/test/text-antialias-subpixel.c
@@ -29,6 +29,8 @@
 #define HEIGHT 22
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "text-antialias-subpixel",
     "Tests text rendering with subpixel antialiasing",
diff --git a/test/text-cache-crash.c b/test/text-cache-crash.c
index 2b78813..00b3b29 100644
--- a/test/text-cache-crash.c
+++ b/test/text-cache-crash.c
@@ -62,6 +62,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "text-cache-crash",
     "Test case for bug causing an assertion failure in _cairo_cache_lookup",
diff --git a/test/text-pattern.c b/test/text-pattern.c
index 7c6c7e7..40a2a45 100644
--- a/test/text-pattern.c
+++ b/test/text-pattern.c
@@ -28,6 +28,8 @@
 #define IMAGE_WIDTH 64
 #define IMAGE_HEIGHT 64
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "text-pattern",
     "Patterned Text",
diff --git a/test/text-rotate.c b/test/text-rotate.c
index 39e868a..abc6baa 100644
--- a/test/text-rotate.c
+++ b/test/text-rotate.c
@@ -84,6 +84,8 @@
 #define NUM_TEXT 20
 #define TEXT_SIZE 12
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "text-rotate",
     "Tests show_text under various rotations"
diff --git a/test/transforms.c b/test/transforms.c
index c0d0c34..97b8fe8 100644
--- a/test/transforms.c
+++ b/test/transforms.c
@@ -28,6 +28,8 @@
 #define WIDTH 45
 #define HEIGHT 30
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "transforms",
     "Test various transformations.",
diff --git a/test/translate-show-surface.c b/test/translate-show-surface.c
index 574a419..a505f36 100644
--- a/test/translate-show-surface.c
+++ b/test/translate-show-surface.c
@@ -43,6 +43,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "translate-show-surface",
     "Tests calls to cairo_show_surface after cairo_translate",
diff --git a/test/trap-clip.c b/test/trap-clip.c
index 3adeb34..a1483de 100644
--- a/test/trap-clip.c
+++ b/test/trap-clip.c
@@ -164,6 +164,8 @@ static void (*clip_funcs[])(cairo_t *cr,
 #define IMAGE_WIDTH (ARRAY_SIZE (pattern_funcs) * (WIDTH + PAD) + PAD)
 #define IMAGE_HEIGHT (ARRAY_SIZE (draw_funcs) * ARRAY_SIZE (clip_funcs) * (HEIGHT + PAD) + PAD)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "trap-clip",
     "Trapezoid clipping",
diff --git a/test/unantialiased-shapes.c b/test/unantialiased-shapes.c
index b679997..2ca4ee8 100644
--- a/test/unantialiased-shapes.c
+++ b/test/unantialiased-shapes.c
@@ -25,6 +25,8 @@
 
 #include "cairo-test.h"
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "unantialiased-shapes",
     "Test shape drawing without antialiasing",
diff --git a/test/unbounded-operator.c b/test/unbounded-operator.c
index 1b14268..70dab83 100644
--- a/test/unbounded-operator.c
+++ b/test/unbounded-operator.c
@@ -132,6 +132,8 @@ static cairo_operator_t operators[] = {
 #define IMAGE_WIDTH (ARRAY_SIZE (operators) * (WIDTH + PAD) + PAD)
 #define IMAGE_HEIGHT (ARRAY_SIZE (draw_funcs) * (HEIGHT + PAD) + PAD)
 
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "unbounded-operator",
     "Operators with an effect for transparent source/mask",
diff --git a/test/zero-alpha.c b/test/zero-alpha.c
index c67c382..833e24c 100644
--- a/test/zero-alpha.c
+++ b/test/zero-alpha.c
@@ -42,6 +42,8 @@
  * 2006-06-13 Paul Giblock reports that this only happens with the
  * xlib backend, and then only on some systems.
  */
+static cairo_test_draw_function_t draw;
+
 cairo_test_t test = {
     "zero-alpha",
     "Testing that drawing with zero alpha has no effect",


More information about the cairo-commit mailing list