diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-10-06 09:56:29 +0100 |
---|---|---|
committer | jan iversen <jani@documentfoundation.org> | 2016-10-18 07:47:21 +0000 |
commit | c9f8d834bbbe77eb5fd5cc267ea518e6a8d1b827 (patch) | |
tree | b8858eabcc19b7c8a3d1c5f29a0f58643e4fed50 | |
parent | ef92273cae159d1c8d5621cebf79d4f90c993f43 (diff) |
Resolves: tdf#103026 invalid dash causes CAIRO_STATUS_INVALID_DASH state
(cherry picked from commit c5d355e9c9cbc94eede8f438895e192d834f7096)
Change-Id: I072635ff7c67022ebfd5bdb475e390f3aab7a51c
Reviewed-on: https://gerrit.libreoffice.org/29553
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
(cherry picked from commit 91e0a73984f72e0f04e6087524332f6354f627d0)
Reviewed-on: https://gerrit.libreoffice.org/29670
Reviewed-by: David Tardon <dtardon@redhat.com>
Reviewed-by: jan iversen <jani@documentfoundation.org>
Tested-by: jan iversen <jani@documentfoundation.org>
-rw-r--r-- | canvas/source/cairo/cairo_canvashelper.cxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx index af94c38d2259..8feda7a9ca2a 100644 --- a/canvas/source/cairo/cairo_canvashelper.cxx +++ b/canvas/source/cairo/cairo_canvashelper.cxx @@ -1209,7 +1209,10 @@ namespace cairocanvas break; } - if( strokeAttributes.DashArray.getLength() > 0 ) + //tdf#103026 If the w scaling is 0, then all dashes become zero so + //cairo will set the cairo_t status to CAIRO_STATUS_INVALID_DASH + //and no further drawing will occur + if (strokeAttributes.DashArray.getLength() > 0 && w > 0.0) { double* pDashArray = new double[ strokeAttributes.DashArray.getLength() ]; for( sal_Int32 i=0; i<strokeAttributes.DashArray.getLength(); i++ ) |