<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - library should be thread-safe"
href="https://bugs.freedesktop.org/show_bug.cgi?id=50992#c122">Comment # 122</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - library should be thread-safe"
href="https://bugs.freedesktop.org/show_bug.cgi?id=50992">bug 50992</a>
from <span class="vcard"><a class="email" href="mailto:Thomas.Freitag@alfa.de" title="Thomas Freitag <Thomas.Freitag@alfa.de>"> <span class="fn">Thomas Freitag</span></a>
</span></b>
<pre>(In reply to <a href="show_bug.cgi?id=50992#c119">comment #119</a>)
<span class="quote">> Created <span class=""><a href="attachment.cgi?id=70852" name="attach_70852" title="Difference of endering of page4 of bug-poppler26776 between new and old code">attachment 70852</a> <a href="attachment.cgi?id=70852&action=edit" title="Difference of endering of page4 of bug-poppler26776 between new and old code">[details]</a></span>
> Difference of endering of page4 of bug-poppler26776 between new and old code</span >
After a lot of work the last weekends, often went one step forward and then two
steps back, optimizing the code, fixing some areas and restructuring others, I
now get now a solution which looks complete in my eyes, but I wasn't able to
solve this problem. After looking hours into this PDF I encountered that it
isn't a problem of the thread-safe page rendering, but a problem of the type 3
font cache in splash: this cache isn't exact, quite the contrary, it seems as
if it produces random output.
You can see that if You just render page 4 (with -f 4 -l 4) with the old code:
You'll get the same output as with the new code.
So a deeper look in the implementation of this cache is necessary to produce an
exact or nearly exact output, indifferent if the char is taken from the cache
or not. But this is another matter alltogether.
BTW, examining the left failed tests of my solution I encountered that we have
a simular problem with the "normal" font cache using fontconfig: because it is
not exact either sometimes the algorithm decides to take a cached font which
output is other than if the font would be fetched new with fontconfig, in other
words, the cached font file is another font file as if searched fresh with
fontconfig.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>