to replace libnr rasterization primitives in nr-arena-shape.cpp; its use is triggered by the #define test_liv in nr-arena-shape.h it seems to solve libart-related bugs on my box, such as 871582, 881397, 848690 and 854468 for shape objects. sad thing, rendering is slower... anyway, commit it if you're interested
Wow! You absolutely rock! Thanks a million! The patch works wonderfully, and I did not notice any significant slowdown.
I found only one problem with your patch: it seems to ignore the stroke-miterlimit property and thus may render very long miters, which is certainly not what a user expects. The old code also had problems with that property, in that it interpreted it as the minimum angle below which miter is chaned to bevel (at least that's the impression I got from experimenting, I have not looked into the code). The correct interpretation is different:
http://www.w3.org/TR/SVG11/painting.html#StrokeMiterlimitProperty
says that this property gives the upper limit of the ratio of the miter length to the stroke width. The initial value (used if not set explicitly) is 4.
Currently, it seems like your patch ignores any value of stroke-miterlimit. Can you please fix that, using of course the correct interpretation of that property?
P.S. For now I'll upload your patch to the patch tracker, so that other developers can have a look. Thanks again!
_________________________________________________________________ The new MSN 8: advanced junk mail protection and 2 months FREE* http://join.msn.com/?page=dept/bcomm&pgmarket=en-ca&RU=http%3a%2f%2f...