summaryrefslogtreecommitdiff
path: root/canvas
diff options
context:
space:
mode:
authorRadek Doulik <rodo@novell.com>2012-04-12 10:07:03 +0200
committerRadek Doulik <rodo@novell.com>2012-04-12 10:07:35 +0200
commitf0a5e147eb9ae4a343f51eda20126488347e66f8 (patch)
tree34469c80c91efce3c710354e3dc9162a70c03ff8 /canvas
parent030c4269cb14ed429e4a1f0314eba7a783816ac1 (diff)
add .5 to control points coordinates after transformation
- otherwise we might end up with wrong coordinates - fixes fdo#38580
Diffstat (limited to 'canvas')
-rw-r--r--canvas/source/cairo/cairo_canvashelper.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx
index c04ac9308e3c..b75efda876fc 100644
--- a/canvas/source/cairo/cairo_canvashelper.cxx
+++ b/canvas/source/cairo/cairo_canvashelper.cxx
@@ -1024,6 +1024,9 @@ namespace cairocanvas
nBX = aB.getX();
nBY = aB.getY();
+ cairo_matrix_transform_point( &aOrigMatrix, &nAX, &nAY );
+ cairo_matrix_transform_point( &aOrigMatrix, &nBX, &nBY );
+
if( aOperation == Stroke )
{
nAX += 0.5;
@@ -1031,8 +1034,7 @@ namespace cairocanvas
nBX += 0.5;
nBY += 0.5;
}
- cairo_matrix_transform_point( &aOrigMatrix, &nAX, &nAY );
- cairo_matrix_transform_point( &aOrigMatrix, &nBX, &nBY );
+
cairo_curve_to( pCairo, nAX, nAY, nBX, nBY, nX, nY );
}
else