<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Segmentation fault when using a complex path for clip and stroke"
href="https://bugs.freedesktop.org/show_bug.cgi?id=74779#c5">Comment # 5</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Segmentation fault when using a complex path for clip and stroke"
href="https://bugs.freedesktop.org/show_bug.cgi?id=74779">bug 74779</a>
from <span class="vcard"><a class="email" href="mailto:sixtysix@inwind.it" title="Massimo <sixtysix@inwind.it>"> <span class="fn">Massimo</span></a>
</span></b>
<pre>Created <span class=""><a href="attachment.cgi?id=104163" name="attach_104163" title="quick hack">attachment 104163</a> <a href="attachment.cgi?id=104163&action=edit" title="quick hack">[details]</a></span> <a href='page.cgi?id=splinter.html&bug=74779&attachment=104163'>[review]</a>
quick hack
This is a patch that fixes the crashes in the three attached test cases on
my machine, it is meant to show what appears to me as the problem, the solution
probably should be decided by someone familiar with the code.
1) not returning the pointer difference as a signed int fixes the 'creduced'
test.
2) computing the IMHO correctly rounded quotient fixes the #93749 attachment
and inserting the new edge sorted at current_y+1 fixes the live data test.
This last fix could possibly introduce the same problem for the horizontally
specular case, that is with an edge having an intersection at the same y as
its starting end-point, but at a greater x, in that case the intersection event
would be added, that is the edge 'contains' the intersection, and when the
event is processed the edges would be correctly swapped preserving the order
in the active list.
HTH</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>