Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020903
I reimplemented the existing (but unused and incorrect) method
GSSendBezierPath: on graphics context to transfer all the NSBezierPath
data to the back end. This is now used as the way a bezier path sets its
data before drawing.
For the backends based on gsc a direct implementation of GSSendPath: on
GSGState exists, which could be further optimised for the specific
backends if ever needed.
Although I did optimise a few methods on NSBezierPath to support this
better, for normal sized path (~5 points) this implementation is still a
lot slower than doing PS or DPS calls in the front end, but we are
getting closer. I must admit, that I don't really understand why it is
still a bit slower, even when not counting the creation of the path and
taking the setting of the style information out. This is the reason why
I gave up on further optimisation, feel free to improve on this.