X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Frrd_graph.c;h=4af6f82a3f97307f47aac6ec7aa14515312879c2;hb=dd0cc409db510efe7cde8d7f0df6ec370be16c60;hp=6648d9ccd9fdcd7aaa6fb94e638de13a1fad2584;hpb=04ed1c285ff739ad2cd1384e6cfe24aea82cfa7e;p=rrdtool.git diff --git a/src/rrd_graph.c b/src/rrd_graph.c index 6648d9c..4af6f82 100644 --- a/src/rrd_graph.c +++ b/src/rrd_graph.c @@ -307,6 +307,7 @@ int im_free( image_desc_t *im) { unsigned long i, ii; + cairo_status_t status; if (im == NULL) return 0; @@ -324,10 +325,19 @@ int im_free( free(im->gdes[i].rpnp); } free(im->gdes); - if (im->surface) - cairo_surface_destroy(im->surface); if (im->font_options) cairo_font_options_destroy(im->font_options); + + status = cairo_status (im->cr); + + if (im->cr) + cairo_destroy(im->cr); + if (im->surface) + cairo_surface_destroy(im->surface); + if (status) + fprintf(stderr,"OOPS: Cairo has issuesm it can't even die: %s\n", + cairo_status_to_string (status)); + return 0; }