[cairo] backend's acquire_source_image question

S Boucher stbya at yahoo.com
Wed Sep 28 12:47:02 PDT 2011

Playing with backends (my own homegrown backend), I'm seeing acquire_source_image being called twice on a given surface, before the acquired images are released.

I see this while running the test clear-source (more specifically, it is in the mask_self part of the test).

What is the contract that the backend is required to respect for acquire_source_image and acquire_dest_image? cairoint.h is note particularly verbose on that.

Can the backend create 2 images who both point to the same pixels memory?  This strikes me as counterintuitive to do, but it is expensive to copy when the surfaces start to get large.

Or maybe this dual acquisition is not supposed to happen in the first place?

Any suggestion appreciated.

More information about the cairo mailing list