<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body><span class="vcard"><a class="email" href="mailto:ppaalanen@gmail.com" title="Pekka Paalanen <ppaalanen@gmail.com>"> <span class="fn">Pekka Paalanen</span></a>
</span> changed
<a class="bz_bug_link
bz_status_NEW "
title="NEW --- - cairo-perf-trace failure"
href="https://bugs.freedesktop.org/show_bug.cgi?id=73580">bug 73580</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">CC</td>
<td>
</td>
<td>ppaalanen@gmail.com
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - cairo-perf-trace failure"
href="https://bugs.freedesktop.org/show_bug.cgi?id=73580#c2">Comment # 2</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - cairo-perf-trace failure"
href="https://bugs.freedesktop.org/show_bug.cgi?id=73580">bug 73580</a>
from <span class="vcard"><a class="email" href="mailto:ppaalanen@gmail.com" title="Pekka Paalanen <ppaalanen@gmail.com>"> <span class="fn">Pekka Paalanen</span></a>
</span></b>
<pre>That "invalid value" error is tormenting me too. All tracing attempts of
complicated applications (Midori, netsurf-gtk, epiphany-browser) end up either
in segfault during the tracing, or then the produced trace causes "invalid
value" when trying to replay it.
The only thing I managed to do, is to get a backtrace of when the error happens
during replay:
#0 0x00007ffff7bd0244 in _csi_error () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#1 0x00007ffff7bc5744 in _csi_ostack_get_context.3734 ()
from /home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#2 0x00007ffff7bc56de in _do_cairo_op.3739 () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#3 0x00007ffff7bc0c8d in _reset_clip.3755 () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#4 0x00007ffff7bd1d58 in csi_object_execute () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#5 0x00007ffff7bce59c in _scan_execute.5675 () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#6 0x00007ffff7bc8482 in scan_execute.5474 () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#7 0x00007ffff7bcac32 in _scan_file.5693 () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#8 0x00007ffff7bd1eed in _csi_scan_file.2241 ()
from /home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#9 0x00007ffff7bd1ddd in _csi_file_execute.2233 ()
from /home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#10 0x00007ffff7bd1d8a in csi_object_execute () from
/home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#11 0x00007ffff7bc517f in cairo_script_interpreter_run ()
from /home/pq/tmp/pixman-install/lib/libcairo-script-interpreter.so.2
#12 0x00000000004062a0 in cairo_perf_trace (perf=0x7fffffffdb50,
target=0x611cc0 <builtin_targets>,
trace=0x7fffffffe06a "./netsurf-load-madoka.trace") at
cairo-perf-trace.c:757
#13 0x0000000000406fbc in main (argc=3, argv=0x7fffffffdcf8) at
cairo-perf-trace.c:1032
And for whatever reason, libcairo-script-interpreter.so seems to never contain
debug information while libcairo.so does, but that's off-topic.
I do run the traces through csi-bind from the Cairo trace repositories, but
that doesn't help.
What can I do to investigate this?
Is there some other tool, that would verbosely tell, what it parses from the
trace, so that I might at least determine whether the trace itself is
corrupted, or if the script interpreter is broken?
I found DEBUG_SCAN in cairo-script-scanner.c, but it does not tell what the
operators are, and I couldn't figure out how to print what they are.
I have been recording and playing back on Raspberry Pi with Cairo 1.12.16. I
have managed to create one working trace from Leafpad. All the traces work or
do not work equally well on both RPi and x86_64.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>