From a303bbaea332df20b81f068366d701d66913c043 Mon Sep 17 00:00:00 2001 From: Jeff Muizelaar Date: Tue, 23 Dec 2008 16:12:56 -0500 Subject: [PATCH] [font-face-get-type] Fix test to cleanup the surface and context properly Destroy the context and the surface even when the test fails. I ran into this because cairo_debug_reset_static_data() is called between the tests on the quartz backend (it doesn't fork) and isn't on other backends? This is perhaps a mistake... --- test/font-face-get-type.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/test/font-face-get-type.c b/test/font-face-get-type.c index f6355e37e..05a763da5 100644 --- a/test/font-face-get-type.c +++ b/test/font-face-get-type.c @@ -28,6 +28,7 @@ static cairo_test_status_t preamble (cairo_test_context_t *ctx) { + cairo_test_status_t status = CAIRO_TEST_SUCCESS; cairo_surface_t *surface; cairo_t *cr; cairo_font_face_t *font_face; @@ -49,7 +50,8 @@ preamble (cairo_test_context_t *ctx) if (cairo_font_face_get_type (font_face) != CAIRO_FONT_TYPE_TOY) { cairo_test_log (ctx, "Unexpected value %d from cairo_font_face_get_type (expected %d)\n", cairo_font_face_get_type (font_face), CAIRO_FONT_TYPE_TOY); - return CAIRO_TEST_FAILURE; + status = CAIRO_TEST_FAILURE; + goto done; } cairo_test_log (ctx, "Testing return value of cairo_get_scaled_font\n"); @@ -58,13 +60,15 @@ preamble (cairo_test_context_t *ctx) if (cairo_scaled_font_get_font_face (scaled_font) != font_face) { cairo_test_log (ctx, "Font face returned from the scaled font is different from that returned by the context\n"); - return CAIRO_TEST_FAILURE; + status = CAIRO_TEST_FAILURE; + goto done; } +done: cairo_destroy (cr); cairo_surface_destroy (surface); - return CAIRO_TEST_SUCCESS; + return status; } CAIRO_TEST (font_face_get_type,