<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - record-paint-alpha-clip-mask.xcb.rgb24 random failure"
href="https://bugs.freedesktop.org/show_bug.cgi?id=84330#c5">Comment # 5</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - record-paint-alpha-clip-mask.xcb.rgb24 random failure"
href="https://bugs.freedesktop.org/show_bug.cgi?id=84330">bug 84330</a>
from <span class="vcard"><a class="email" href="mailto:psychon@znc.in" title="Uli Schlachter <psychon@znc.in>"> <span class="fn">Uli Schlachter</span></a>
</span></b>
<pre>Ok, I was wrong in that this is a bug in the server. The part that I forgot is:
Each render composite operation is only applied to the extents of the affected
region. This means that "no trapezoids" means "no extents" means "no effect"
and this is indeed a no-op. I don't know if the RENDER spec says that anywhere,
but it is how the implementation behaves.
The comment in the code indicates this with the comment saying "assert(trap
extents == extents)". Obviously (as this bug shows), this assert is wrong. It
might even still be wrong when we have a non-empty list of traps.
So my proposed fix is to just drop this optimisation completely.
I sent the following fix to the cairo mailing list:
<a href="https://lists.cairographics.org/archives/cairo/2016-July/027619.html">https://lists.cairographics.org/archives/cairo/2016-July/027619.html</a></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>