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

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Dec 15 02:11:02 PST 2014


https://bugs.freedesktop.org/show_bug.cgi?id=73580

--- Comment #4 from Emanuele Aina <emanuele.aina at collabora.com> ---
Testing latest master (4a225fca5f12) on my laptop (Debian sid amd64) I'm still
able to reproduce the issue (but debug symbols work everywhere without hacks,
yay!):

$ CAIRO_TRACE_SO=util/cairo-trace/.libs/libcairo-trace.so
util/cairo-trace/cairo-trace zenity --info --text foo
cairo-trace: Recording cairo trace data to ./zenity.24699.trace

$ perf/cairo-perf-trace ./zenity.24699.trace 
[ # ]  backend                         test   min(s) median(s) stddev. count
[  0]      xcb                 zenity.24699 Error during replay, line 86:
invalid value (typically too big) for the size of the input (surface, pattern,
etc.)
[  0]     xlib                 zenity.24699 Error during replay, line 86:
invalid value (typically too big) for the size of the input (surface, pattern,
etc.)
[ # ]    image: pixman 0.32.6
[  0]    image                 zenity.24699 Error during replay, line 86:
invalid value (typically too big) for the size of the input (surface, pattern,
etc.)
[ # ]  image16: pixman 0.32.6
[  0]  image16                 zenity.24699 Error during replay, line 86:
invalid value (typically too big) for the size of the input (surface, pattern,
etc.)

Breaking with gdb on _csi_error() shows that _set_source() is peeking at the
stack, expecting a context object and getting a surface object instead. Indeed,
the current top of the stack contains:

0 CSI_OBJECT_TYPE_PATTERN
1 CSI_OBJECT_TYPE_SURFACE
2 CSI_OBJECT_TYPE_CONTEXT


This is in response to a cairo_set_source_surface() call, so I would suspect
that the pattern object is out-of-place but this would mean that there are two
bugs: the pattern object in the stack and _set_source() assuming a pattern even
when replaying a cairo_set_source_surface() call.

That said my understanding of how the cairo script stack management works is
too limited to figure out if it's a problem with the trace or with the
interpreter, so some help would be greatly appreciated.

-- 
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/20141215/b1263555/attachment.html>


More information about the cairo-bugs mailing list