When rendering non-scaling-stroke elements RenderPath does the following:
- move to screen coordinate space (multiply CTM with inverse screen transformation)
- transform the path to screen coordinates
- stroke path
(1:1 according to SVG 1.2 Tiny spec)
RenderPath::fillAndStrokePath doesn't undo the screen coordinate space transformation, which leaves the GraphicsContext in the wrong coordinate space.
As markers are renderer right after that step, they don't show up anymore, when applying vector-effect="non-scaling-stroke" to any object.
Created attachment 65254 [details]
Comment on attachment 65254 [details]
Landed in r65889.