vcl/opengl/gdiimpl.cxx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
New commits: commit d4b49841090c70cc31000fb30de9b5ddc07b0c42 Author: Miklos Vajna <vmik...@collabora.co.uk> Date: Tue Jul 3 17:17:42 2018 +0200 tdf#115671 vcl opengl: fix drawing of polylines with duplicate points The bugdoc had a custom shape, the interesting part of it was a triangle with miter line join, where the last segment was missing. In that case RenderList::addDrawPolyLine() mishandled the polyline, as it does not expect duplicate points in it. Change-Id: I06d5c2d191bb6269a87da1f006f27a94205f5145 Reviewed-on: https://gerrit.libreoffice.org/56879 Reviewed-by: Miklos Vajna <vmik...@collabora.co.uk> Tested-by: Jenkins diff --git a/vcl/opengl/gdiimpl.cxx b/vcl/opengl/gdiimpl.cxx index bc29e6be7255..bad495bdb1b6 100644 --- a/vcl/opengl/gdiimpl.cxx +++ b/vcl/opengl/gdiimpl.cxx @@ -1601,7 +1601,12 @@ bool OpenGLSalGraphicsImpl::drawPolyLine(const basegfx::B2DPolygon& rPolygon, do { VCL_GL_INFO("::drawPolyLine " << rPolygon.getB2DRange()); - mpRenderList->addDrawPolyLine(rPolygon, fTransparency, rLineWidth, eLineJoin, eLineCap, + // addDrawPolyLine() assumes that there are no duplicate points in the + // polygon. + basegfx::B2DPolygon aPolygon(rPolygon); + aPolygon.removeDoublePoints(); + + mpRenderList->addDrawPolyLine(aPolygon, fTransparency, rLineWidth, eLineJoin, eLineCap, fMiterMinimumAngle, mnLineColor, mrParent.getAntiAliasB2DDraw()); PostBatchDraw(); return true; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits