From 2eceacbf55b5796e4449fb3efc85cffdf5b6303c Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 12 Aug 2010 00:40:33 +0200 Subject: Fix rendering failures caused by markers with markerUnits="strokeWidth" on shapes with zero stroke width (bzr r9508.1.56) --- src/display/nr-arena-shape.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/display/nr-arena-shape.cpp') diff --git a/src/display/nr-arena-shape.cpp b/src/display/nr-arena-shape.cpp index 8a2b27f4f..550195c7c 100644 --- a/src/display/nr-arena-shape.cpp +++ b/src/display/nr-arena-shape.cpp @@ -370,6 +370,7 @@ nr_arena_shape_render(cairo_t *ct, NRArenaItem *item, NRRectL *area, NRPixBlock // to render svg:pattern has_fill = shape->nrstyle.prepareFill(ct, &shape->paintbox); has_stroke = shape->nrstyle.prepareStroke(ct, &shape->paintbox); + has_stroke &= (shape->nrstyle.stroke_width != 0); if (has_fill || has_stroke) { // TODO: remove segments outside of bbox when no dashes present @@ -387,7 +388,7 @@ nr_arena_shape_render(cairo_t *ct, NRArenaItem *item, NRRectL *area, NRPixBlock cairo_restore(ct); } - /* Render markers into parent buffer */ + // marker rendering for (NRArenaItem *child = shape->markers; child != NULL; child = child->next) { unsigned int ret = nr_arena_item_invoke_render(ct, child, area, pb, flags); if (ret & NR_ARENA_ITEM_STATE_INVALID) return ret; -- cgit v1.2.3