<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>76534</bug_id>
          
          <creation_ts>2012-01-18 05:44:02 -0800</creation_ts>
          <short_desc>[Qt] fontCache related assertion revealed by svg text layout optimization from r105143</short_desc>
          <delta_ts>2014-02-03 03:19:39 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P1</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>65711</blocked>
    
    <blocked>79668</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Gabor Rapcsanyi">rgabor</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>hausmann</cc>
    
    <cc>kbalazs</cc>
    
    <cc>ossy</cc>
    
    <cc>rhodovan.u-szeged</cc>
    
    <cc>zherczeg</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>537795</commentid>
    <comment_count>0</comment_count>
    <who name="Gabor Rapcsanyi">rgabor</who>
    <bug_when>2012-01-18 05:44:02 -0800</bug_when>
    <thetext>ASSERTION FAILED: fontCache()-&gt;generation() == m_generation
../../../../Source/WebCore/platform/graphics/FontFallbackList.cpp(104) : const WebCore::FontData* WebCore::FontFallbackList::fontDataAt(const WebCore::Font*, unsigned int) const</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537808</commentid>
    <comment_count>1</comment_count>
    <who name="Gabor Rapcsanyi">rgabor</who>
    <bug_when>2012-01-18 06:00:38 -0800</bug_when>
    <thetext>Skipped until fix: http://trac.webkit.org/changeset/105269</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537881</commentid>
    <comment_count>2</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-18 08:10:28 -0800</bug_when>
    <thetext>Skipping didn&apos;t solve the problem, because the next test started to assert with same error: svg/carto.net/scrollbar.svg</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537882</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-18 08:12:41 -0800</bug_when>
    <thetext>I cc-ed SVG and fontcache experts. Have you got any idea?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537929</commentid>
    <comment_count>4</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-18 09:38:13 -0800</bug_when>
    <thetext>svg/carto.net/combobox.svg is the culprit test.
You can easily reproduce the bug with:
$ Tools/Scripts/old-run-webkit-tests --debug svg/carto.net/combobox.svg RANDOM-SVG-CARTO_NET-TEST</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>537937</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-18 09:42:44 -0800</bug_when>
    <thetext>I skipped a test to paint the bot green: http://trac.webkit.org/changeset/105287

But we really need a proper fix for this assertion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539458</commentid>
    <comment_count>6</comment_count>
      <attachid>123304</attachid>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-01-20 06:18:07 -0800</bug_when>
    <thetext>Created attachment 123304
Draft patch

This patch fixes this particular issue, but it may have other side effects, so it is early to call this as a proper fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540093</commentid>
    <comment_count>7</comment_count>
      <attachid>123304</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2012-01-21 00:35:16 -0800</bug_when>
    <thetext>Comment on attachment 123304
Draft patch

So is this safe to land? Or does it need further testing?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540176</commentid>
    <comment_count>8</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-01-21 14:29:29 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 123304 [details])
&gt; So is this safe to land? Or does it need further testing?

I would rather ask, does this really fix the bug, or just hides it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>651427</commentid>
    <comment_count>9</comment_count>
      <attachid>123304</attachid>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-06-18 09:12:42 -0700</bug_when>
    <thetext>Comment on attachment 123304
Draft patch

Zoltan said to me that it&apos;s about where we call clearMemoryCaches, and this reordering untriggered the bug. However, all of this is public API so it should work in any order. I&apos;m going to check if this is reproducible now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652369</commentid>
    <comment_count>10</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-06-19 06:26:23 -0700</bug_when>
    <thetext>I could not reproduce this bug now with Qt 5. Can we close it? Should we check Qt 4.8 as well, given that it&apos;s support will be dropped from trunk soon?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652406</commentid>
    <comment_count>11</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-06-19 07:05:25 -0700</bug_when>
    <thetext>It is still valid on Qt 4.8, you can easily reproduce the assert:
$ Tools/Scripts/old-run-webkit-tests --debug svg/carto.net/combobox.svg svg/carto.net/frameless-svg-parse-error.html

Maybe it is valid on Qt 5 too, but I don&apos;t have debug Qt 5 build. And unfortunately debug WebKit build isn&apos;t possible with release Qt 5.

Could you test it with Qt 5?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652410</commentid>
    <comment_count>12</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-06-19 07:10:34 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; It is still valid on Qt 4.8, you can easily reproduce the assert:
&gt; $ Tools/Scripts/old-run-webkit-tests --debug svg/carto.net/combobox.svg svg/carto.net/frameless-svg-parse-error.html
&gt; 
&gt; Maybe it is valid on Qt 5 too, but I don&apos;t have debug Qt 5 build. And unfortunately debug WebKit build isn&apos;t possible with release Qt 5.
&gt; 
&gt; Could you test it with Qt 5?

I will. The question is: should we care about Qt 4?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652420</commentid>
    <comment_count>13</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-06-19 07:17:39 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; I will. The question is: should we care about Qt 4?
Yes, we should till Qt 4 is supported officially.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652431</commentid>
    <comment_count>14</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-06-19 07:27:52 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; (In reply to comment #12)
&gt; &gt; I will. The question is: should we care about Qt 4?
&gt; Yes, we should till Qt 4 is supported officially.

Qt 4 + trunk support will be dropped in a few weeks (days?). Do you think about that time, or the lifetime of Qt 4? Qt 4 with trunk will be mantained in a branch, so I think Qt 4 QA work will not be our job anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652438</commentid>
    <comment_count>15</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-06-19 07:34:41 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; (In reply to comment #13)
&gt; &gt; (In reply to comment #12)
&gt; &gt; &gt; I will. The question is: should we care about Qt 4?
&gt; &gt; Yes, we should till Qt 4 is supported officially.
&gt; 
&gt; Qt 4 + trunk support will be dropped in a few weeks (days?). Do you think about that time, or the lifetime of Qt 4? Qt 4 with trunk will be mantained in a branch, so I think Qt 4 QA work will not be our job anymore.

You&apos;re right. But we should care with Qt 4 till the big boss push 
the big red button and remove all Qt 4 related code from trunk.

But it is absolutely unrelated to this topic. The question
is here if the bug is Qt4 related or it is valid on Qt5 too.

If it is Qt4 related, we should move the skipped list entry to qt-4.8/Skipped.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>652443</commentid>
    <comment_count>16</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-06-19 07:41:35 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; (In reply to comment #14)
&gt; &gt; (In reply to comment #13)
&gt; &gt; &gt; (In reply to comment #12)
&gt; &gt; &gt; &gt; I will. The question is: should we care about Qt 4?
&gt; &gt; &gt; Yes, we should till Qt 4 is supported officially.
&gt; &gt; 
&gt; &gt; Qt 4 + trunk support will be dropped in a few weeks (days?). Do you think about that time, or the lifetime of Qt 4? Qt 4 with trunk will be mantained in a branch, so I think Qt 4 QA work will not be our job anymore.
&gt; 
&gt; You&apos;re right. But we should care with Qt 4 till the big boss push 
&gt; the big red button and remove all Qt 4 related code from trunk.
&gt; 
&gt; But it is absolutely unrelated to this topic. The question
&gt; is here if the bug is Qt4 related or it is valid on Qt5 too.
&gt; 
&gt; If it is Qt4 related, we should move the skipped list entry to qt-4.8/Skipped.

Ok, I just wanted to make this clear :)

Yes, this is still reproducible with Qt 5 WebKit1.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>654465</commentid>
    <comment_count>17</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-06-21 06:51:49 -0700</bug_when>
    <thetext>Filed a new bug for it since I&apos;m planning to change cross-platform code.

*** This bug has been marked as a duplicate of bug 89658 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>662033</commentid>
    <comment_count>18</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-07-03 01:12:24 -0700</bug_when>
    <thetext>Unduplicating since my assumption that the bug is related to the font system was wrong. In fact it is in the svg code from r105143.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>662037</commentid>
    <comment_count>19</comment_count>
    <who name="Balazs Kelemen">kbalazs</who>
    <bug_when>2012-07-03 01:16:19 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; Unduplicating since my assumption that the bug is related to the font system was wrong. In fact it is in the svg code from r105143.

See discussion in bug 89658 comment 9.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>975382</commentid>
    <comment_count>20</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2014-02-03 03:19:39 -0800</bug_when>
    <thetext>=== Bulk closing of Qt bugs ===

If you believe that this bug report is still relevant for a non-Qt port of webkit.org, please re-open it and remove [Qt] from the summary.

If you believe that this is still an important QtWebKit bug, please fill a new report at https://bugreports.qt-project.org and add a link to this issue. See http://qt-project.org/wiki/ReportingBugsInQt for additional guidelines.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123304</attachid>
            <date>2012-01-20 06:18:07 -0800</date>
            <delta_ts>2012-06-18 09:12:42 -0700</delta_ts>
            <desc>Draft patch</desc>
            <filename>drt-fix.patch</filename>
            <type>text/plain</type>
            <size>1166</size>
            <attacher name="Zoltan Herczeg">zherczeg</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0R1bXBSZW5kZXJUcmVlUXQuY3Bw
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRyZWVRdC5jcHAKaW5kZXggZTdh
NDk4MC4uZmQzNWI2ZSAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJl
bmRlclRyZWVRdC5jcHAKKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvRHVtcFJlbmRlclRy
ZWVRdC5jcHAKQEAgLTYxOSwxMSArNjE5LDYgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6b3Blbihj
b25zdCBRVXJsJiB1cmwpCiAgICAgaW50IHdpZHRoID0gaXNXM0NUZXN0ID8gNDgwIDogTGF5b3V0
VGVzdENvbnRyb2xsZXI6Om1heFZpZXdXaWR0aDsKICAgICBpbnQgaGVpZ2h0ID0gaXNXM0NUZXN0
ID8gMzYwIDogTGF5b3V0VGVzdENvbnRyb2xsZXI6Om1heFZpZXdIZWlnaHQ7CiAgICAgbV9tYWlu
Vmlldy0+cmVzaXplKFFTaXplKHdpZHRoLCBoZWlnaHQpKTsKLSAgICBtX3BhZ2UtPnNldFByZWZl
cnJlZENvbnRlbnRzU2l6ZShRU2l6ZSgpKTsKLSAgICBtX3BhZ2UtPnNldFZpZXdwb3J0U2l6ZShR
U2l6ZSh3aWR0aCwgaGVpZ2h0KSk7Ci0KLSAgICBRRm9jdXNFdmVudCBldihRRXZlbnQ6OkZvY3Vz
SW4pOwotICAgIG1fcGFnZS0+ZXZlbnQoJmV2KTsKIAogICAgIFFXZWJTZXR0aW5nczo6Y2xlYXJN
ZW1vcnlDYWNoZXMoKTsKICNpZiAhKFFUX1ZFUlNJT04gPD0gUVRfVkVSU0lPTl9DSEVDSyg0LCA2
LCAyKSkKQEAgLTYzMSw2ICs2MjYsMTIgQEAgdm9pZCBEdW1wUmVuZGVyVHJlZTo6b3Blbihjb25z
dCBRVXJsJiB1cmwpCiAjZW5kaWYKICAgICBpbml0aWFsaXplRm9udHMoKTsKIAorICAgIG1fcGFn
ZS0+c2V0UHJlZmVycmVkQ29udGVudHNTaXplKFFTaXplKCkpOworICAgIG1fcGFnZS0+c2V0Vmll
d3BvcnRTaXplKFFTaXplKHdpZHRoLCBoZWlnaHQpKTsKKworICAgIFFGb2N1c0V2ZW50IGV2KFFF
dmVudDo6Rm9jdXNJbik7CisgICAgbV9wYWdlLT5ldmVudCgmZXYpOworCiAgICAgRHVtcFJlbmRl
clRyZWVTdXBwb3J0UXQ6OmR1bXBGcmFtZUxvYWRlcih1cmwudG9TdHJpbmcoKS5jb250YWlucygi
bG9hZGluZy8iKSk7CiAgICAgc2V0VGV4dE91dHB1dEVuYWJsZWQodHJ1ZSk7CiAgICAgbV9wYWdl
LT5tYWluRnJhbWUoKS0+bG9hZCh1cmwpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>