From 2c1bc9cdd61b9e080d4a06c2ae8290e243348228 Mon Sep 17 00:00:00 2001 From: Bryce Harrington Date: Fri, 14 Mar 2014 13:39:02 -0700 Subject: Check for surface error status --- src/caskbench.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/caskbench.cpp') diff --git a/src/caskbench.cpp b/src/caskbench.cpp index 92a1b8e..2c85523 100644 --- a/src/caskbench.cpp +++ b/src/caskbench.cpp @@ -78,6 +78,11 @@ void write_image_file_cairo (const char *fname, caskbench_context_t *context) { assert (context->cairo_surface); + cairo_status_t status = cairo_surface_status (context->cairo_surface); + if (status != CAIRO_STATUS_SUCCESS) { + printf("Error writing cairo surface to file: %s\n", cairo_status_to_string(status)); + return; + } cairo_surface_write_to_png (context->cairo_surface, fname); } @@ -95,6 +100,11 @@ write_image_file_skia (const char *fname, caskbench_context_t *context) bitmap.width(), bitmap.height(), bitmap.rowBytes()); + cairo_status_t status = cairo_surface_status (surface); + if (status != CAIRO_STATUS_SUCCESS) { + printf("Error writing skia surface to file: %s\n", cairo_status_to_string(status)); + return; + } cairo_surface_write_to_png (surface, fname); cairo_surface_destroy(surface); } @@ -415,6 +425,7 @@ main (int argc, char *argv[]) // Write image to file if (perf_tests[c].write_image) { + printf("Writing %s.png\n", perf_tests[c].name); snprintf(fname, sizeof(fname), "%s.png", perf_tests[c].name); perf_tests[c].write_image (fname, &context); } -- cgit v1.3.1-4-g156e