diff --git a/program/src/rrd_gfx.c b/program/src/rrd_gfx.c
index ac0e96fd2eca4d0505cb2dd3d5d3f6a90dea3e04..c977d566786ff4d55822e9a76c2340719dbe6ba1 100644 (file)
--- a/program/src/rrd_gfx.c
+++ b/program/src/rrd_gfx.c
line_width = cairo_get_line_width(cr);
line_height = line_width;
cairo_user_to_device_distance(cr, &line_width, &line_height);
- line_width = line_width / 2.0 - (long) (line_width / 2.0);
- line_height = line_height / 2.0 - (long) (line_height / 2.0);
- *x = (double) ((long) (*x + 0.5)) - line_width;
- *y = (double) ((long) (*y + 0.5)) + line_height;
+ line_width = line_width / 2.0 - ceil(line_width / 2.0);
+ line_height = line_height / 2.0 - ceil(line_height / 2.0);
+ *x = ceil(*x - 0.5) - line_width;
+ *y = ceil(*y + 0.5) + line_height;
cairo_device_to_user(cr, x, y);
}
if (!im->gridfit)
return;
cairo_user_to_device(cr, x, y);
- *x = (double) ((long) (*x + 0.5));
- *y = (double) ((long) (*y + 0.5));
+ *x = floor(*x);
+ *y = ceil(*y);
cairo_device_to_user(cr, x, y);
}