<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - [GTK] WebKitWebProcess at 100% CPU loading hyphenation dictionaries (ASSERTION FAILED: xPos + prefixWidth <= availableWidth)"
href="https://bugs.webkit.org/show_bug.cgi?id=165601#c8">Comment # 8</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - [GTK] WebKitWebProcess at 100% CPU loading hyphenation dictionaries (ASSERTION FAILED: xPos + prefixWidth <= availableWidth)"
href="https://bugs.webkit.org/show_bug.cgi?id=165601">bug 165601</a>
from <span class="vcard"><a class="email" href="mailto:mcatanzaro@igalia.com" title="Michael Catanzaro <mcatanzaro@igalia.com>"> <span class="fn">Michael Catanzaro</span></a>
</span></b>
<pre>Zan, can the problem you identified result in this assertion failure? I guess the assertion is a separate issue that just coincidentally is related to hyphenation and occurs on the same page?
(In reply to <a href="show_bug.cgi?id=165601#c5">comment #5</a>)
<span class="quote">> With the 'en' locale, loading the Python PEP page, only three
> HyphenDictionary objects are created, with the underlying hyph_en_*.dic file
> opened and processed.</span >
My locale is en_US.UTF-8. But I have 23 hyph_en_*.dic dictionaries installed, of which all except hyph_en_US.dic itself are symlinks to hyph_en_US.dic.
<span class="quote">> With the 'es' locale, loading the same page, 1723 HyphenDictionary objects
> are created, loading each hyph_es_*.dic file 82 times. It still doesn't spin
> the CPU usage of the WebProcess to 100% on my system, but it's obviously a
> problem.</span >
Thanks for debugging. :)
<span class="quote">> While the TinyLRUCache capacity could be bumped, it should be noted that at
> least in Debian packages a lot of these locale variations for one specific
> locale under /usr/share/hyphen are simply symbolic links to that one master
> dict file. For instance, there's 21 different Spanish locales under
> /usr/share/hyphen, from Bolivian to Venezuelan, but it's 20 files just
> linking to the master hyphen_es_ES.dic file.
>
> Same for the English locales -- hyph_en_AU.dic and hyph_en_ZA.dic link to
> hyph_en_GB.dic.
>
> So we should maybe also look into detecting symlinks when storing these
> filepaths in the availableLocales() HashMap.</span >
I guess we really ought to do both. A class named TinyLRUCache seems appropriate here, but I would never have assumed the capacity was as low as 4....</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>