[cairo-bugs] [Bug 73580] cairo-perf-trace failure

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Jan 19 05:23:00 PST 2015


--- Comment #19 from Emanuele Aina <emanuele.aina at collabora.com> ---
> For example, inside cairo_surface_create_for_rectangle() there is a code
> fragment that is suspiciously similar to the one which was in the old
> version of cairo_surface_create_similar[_image]().
> Would this be the right fragment to abstract?
> (I think the concern that Bryce expressed on IRC might be related to this)

Thanks, I'll have a look to see if I can find the right level of abstraction.

> Even better, should we just use _emit_surface[_op]()?
> In some functions, a comment explains why _emit_surface should not be used
> (example: cairo_surface_mark_dirty() in trace.c), but the one which are
> involved in this bug do not say anything on this.

A quite difficult to understand (for me) issue is that _emit_surface() is quite
different from what the highlighted functions do to print the indexing
information. In particular _emit_surface() seems to pop all the objects on the
stack until it reaches the target surface, which seems quite destructive, while
our functions all try different indexing strategies to pick the right surface
without altering the stack.

You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cairographics.org/archives/cairo-bugs/attachments/20150119/e7c1a9eb/attachment.html>

More information about the cairo-bugs mailing list