summaryrefslogtreecommitdiffstats
path: root/src/splivarot.cpp
diff options
context:
space:
mode:
authorLiam P. White <inkscapebronyat-signgmaildotcom>2014-04-18 02:20:21 +0000
committerLiam P. White <inkscapebronyat-signgmaildotcom>2014-04-18 02:20:21 +0000
commit3e7faea771dc06753bfbe3c319c046d839ee039c (patch)
tree23ba8843cf2ebd46bb0038c1816dd296ce92741f /src/splivarot.cpp
parentSemi-fix for Join type on closed paths (diff)
parentLatvian translation update (diff)
downloadinkscape-3e7faea771dc06753bfbe3c319c046d839ee039c.tar.gz
inkscape-3e7faea771dc06753bfbe3c319c046d839ee039c.zip
Update to trunk
(bzr r13090.1.60)
Diffstat (limited to 'src/splivarot.cpp')
-rw-r--r--src/splivarot.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/splivarot.cpp b/src/splivarot.cpp
index c800ace0b..a08809adf 100644
--- a/src/splivarot.cpp
+++ b/src/splivarot.cpp
@@ -960,16 +960,17 @@ Geom::PathVector* item_outline(SPItem const *item, bool bbox_only)
Geom::Affine const transform(item->transform);
float const scale = transform.descrim();
- float o_width, o_miter;
+ float o_width = i_style->stroke_width.computed;
+ if (o_width < Geom::EPSILON) {
+ // This may result in rounding errors for very small stroke widths (happens e.g. when user unit is large).
+ // See bug lp:1244861
+ o_width = Geom::EPSILON;
+ }
+ float o_miter = i_style->stroke_miterlimit.value * o_width;
+
JoinType o_join;
ButtType o_butt;
{
- o_width = i_style->stroke_width.computed;
- if (o_width < 0.01) {
- o_width = 0.01;
- }
- o_miter = i_style->stroke_miterlimit.value * o_width;
-
switch (i_style->stroke_linejoin.computed) {
case SP_STROKE_LINEJOIN_MITER:
o_join = join_pointy;