[cairo] implement clone_similar fallback
tgriggs at cincom.com
Mon Aug 6 23:15:11 PDT 2007
On Aug 6, 2007, at 22:38, Vladimir Vukicevic wrote:
> Here's a patch after a discussion on irc... basically, the backend
> clone_similar function was called from two places
> (clip_init_deep_copy and the pattern acquire_surface_for_gradient),
> but the function isn't a required one for backends to implement.
> So if it ever failed, both of these functions just failed.
> It was hard to hit either of these cases -- the win32 surface
> didn't implement clone_similar, but it also never used
> pattern_acquire_surface, and the other would only be hit if you
> tried to push_group with a mask clip set.
> Here's a patch that implements fallback for clone_similar; it uses
> create_similar_scratch and then calls composite with OPERATOR_SOURCE.
Would this explain a weird behavior I saw the other day using the
Quartz backend? I was doing a push/pop_group, and had a clip shape
that was trapezoidal (not rectangular). It worked great on X11, but
on Quartz, I got the "extents" of the trapezoid.
One man's blue plane is another man's pink plane.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the cairo