X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Frrd_graph.c;h=6f1a1ac15ea5295d895a83871431119c43ab81e4;hb=9a5fdb3f8db54f97bdab9284bbf15ff0b31a5169;hp=57a1bb6d8b3a6676fce98aa45f83f10685ca97a2;hpb=e357fb7d089224a089b6b34699f592a29a20fd59;p=rrdtool.git diff --git a/src/rrd_graph.c b/src/rrd_graph.c index 57a1bb6..6f1a1ac 100644 --- a/src/rrd_graph.c +++ b/src/rrd_graph.c @@ -2950,8 +2950,8 @@ int graph_paint( rrd_infoval_t info; PangoFontMap *font_map = pango_cairo_font_map_get_default(); - /* if we are lazy and there is nothing to PRINT ... quit now */ - if (lazy && im->prt_c == 0) { + /* if we want and can be lazy ... quit now */ + if (lazy) { info.u_cnt = im->ximg; grinfo_push(im, sprintf_alloc("image_width"), RD_I_CNT, info); info.u_cnt = im->yimg; @@ -2969,7 +2969,7 @@ int graph_paint( * if there are no graph elements (i==0) we stop here ... * if we are lazy, try to quit ... */ - i = print_calc(im); + i = print_calc(im); if (i < 0) return -1; @@ -3059,6 +3059,7 @@ int graph_paint( (im->surface, CAIRO_SVG_VERSION_1_1); break; }; + cairo_destroy(im->cr); im->cr = cairo_create(im->surface); cairo_set_antialias(im->cr, im->graph_antialias); cairo_scale(im->cr, im->zoom, im->zoom); @@ -3567,7 +3568,7 @@ int rrd_graph( *ysize = 0; *ymin = 0; *ymax = 0; - while (walker) { + while (walker) { if (strcmp(walker->key, "image_width") == 0) { *xsize = walker->value.u_int; } else if (strcmp(walker->key, "image_height") == 0) { @@ -3667,10 +3668,17 @@ rrd_info_t *rrd_graph_v( if (im.imginfo) { rrd_infoval_t info; + char *filename; + filename = im.graphfile + strlen(im.graphfile); + while (filename > im.graphfile) { + if (*(filename - 1) == '/' || *(filename - 1) == '\\') + break; + filename--; + } info.u_str = sprintf_alloc(im.imginfo, - im.graphfile, + filename, (long) (im.zoom * im.ximg), (long) (im.zoom * im.yimg)); grinfo_push(&im, sprintf_alloc("image_info"), RD_I_STR, info); @@ -4448,9 +4456,9 @@ int vdef_calc( src = &im->gdes[dst->vidx]; data = src->data + src->ds; end = - src->end_orig % (long)src->step == - 0 ? src->end_orig : (src->end_orig + (long)src->step - - src->end_orig % (long)src->step); + src->end_orig % (long) src->step == + 0 ? src->end_orig : (src->end_orig + (long) src->step - + src->end_orig % (long) src->step); steps = (end - src->start) / src->step; #if 0