<?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>101070</bug_id>
          
          <creation_ts>2012-11-02 09:56:41 -0700</creation_ts>
          <short_desc>Move m_element checks out of canShareStyle into locateSharedStyle</short_desc>
          <delta_ts>2012-11-02 16:02:21 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ojan Vafai">ojan</reporter>
          <assigned_to name="Ojan Vafai">ojan</assigned_to>
          <cc>eric</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>757281</commentid>
    <comment_count>0</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-11-02 09:56:41 -0700</bug_when>
    <thetext>Move m_element checks out of canShareStyle into locateSharedStyle</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757284</commentid>
    <comment_count>1</comment_count>
      <attachid>172082</attachid>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-11-02 09:59:05 -0700</bug_when>
    <thetext>Created attachment 172082
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757288</commentid>
    <comment_count>2</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-11-02 09:59:43 -0700</bug_when>
    <thetext>Just stumbled across this as I was looking at canShareStyleWithElement earlier today.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757289</commentid>
    <comment_count>3</comment_count>
      <attachid>172082</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-11-02 10:01:20 -0700</bug_when>
    <thetext>Comment on attachment 172082
Patch

Looks logical. Ideally we would measure the performance improvement to also make sure there is no performance loss. It’s conceivable that this could make things slower in some cases even though it should make most things faster.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757291</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-11-02 10:05:53 -0700</bug_when>
    <thetext>canShareStyle* is quite hot (on the bechnmarks where we&apos;ve gotten rid of more egregiously slow code.  So anything we can do to make it faster is good. :)

I trust our perf bots (http://webkit-perf.appspot.com/ and http://build.chromium.org/f/chromium/perf/dashboard/overview.html) will tell us if we did anything wrong. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757301</commentid>
    <comment_count>5</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-11-02 10:19:35 -0700</bug_when>
    <thetext>Yeah. I don&apos;t actually expect this to have a meaningful performance impact in practice. I&apos;ll monitor the chromium perf dashboards though to be sure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757336</commentid>
    <comment_count>6</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-11-02 10:54:20 -0700</bug_when>
    <thetext>Committed r133315: &lt;http://trac.webkit.org/changeset/133315&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757703</commentid>
    <comment_count>7</comment_count>
      <attachid>172082</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-11-02 16:01:39 -0700</bug_when>
    <thetext>Comment on attachment 172082
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=172082&amp;action=review

&gt; Source/WebCore/css/StyleResolver.cpp:1217
&gt; -        if (!m_element-&gt;hasTagName(progressTag))
&gt; -            return false;
&gt; -
&gt; +        ASSERT(!m_element-&gt;hasTagName(progressTag));

Wait, what? Is this assertion backwards?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757705</commentid>
    <comment_count>8</comment_count>
      <attachid>172082</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-11-02 16:02:21 -0700</bug_when>
    <thetext>Comment on attachment 172082
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=172082&amp;action=review

&gt;&gt; Source/WebCore/css/StyleResolver.cpp:1217
&gt;&gt; +        ASSERT(!m_element-&gt;hasTagName(progressTag));
&gt; 
&gt; Wait, what? Is this assertion backwards?

Oh, I see you noticed and fixed this later.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172082</attachid>
            <date>2012-11-02 09:59:05 -0700</date>
            <delta_ts>2012-11-02 16:02:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-101070-20121102165725.patch</filename>
            <type>text/plain</type>
            <size>3231</size>
            <attacher name="Ojan Vafai">ojan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMzMzA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWRlMjRkOGRhZTE3Nzll
OWM0ZDhkNWZlOThhNzRhMTcwYzZmYjY0Yy4uODhiOThiMjc2YmQyMjQ3Yzg1MjE4ODExN2M5MDlm
OWNjNGQ3OTUzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEyLTExLTAyICBPamFu
IFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTW92ZSBtX2VsZW1lbnQgY2hl
Y2tzIG91dCBvZiBjYW5TaGFyZVN0eWxlIGludG8gbG9jYXRlU2hhcmVkU3R5bGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMTA3MAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENhbiBzaGFyZVN0eWxlV2l0
aEVsZW1lbnQgaXMgY2FsbGVkIGZvciBlYWNoIHNpYmxpbmcgYXMgd2UgbG9vayBmb3IgYQorICAg
ICAgICBzaGFyZUVsZW1lbnQuIGxvY2F0ZVNoYXJlZFN0eWxlIGlzIGNhbGxlZCBvbmNlIGZvciB0
aGUgZWxlbWVudCB3ZSdyZQorICAgICAgICB0cnlpbmcgdG8gZmluZCBhIHN0eWxlIGZvci4gQ2hl
Y2tzIHRoYXQgb25seSBkZXBlbmQgb24gdGhlIGxhdHRlcgorICAgICAgICBlbGVtZW50IHNob3Vs
ZCwgdGh1cyBiZSBpbiBsb2NhdGVTaGFyZWRTdHlsZS4KKworICAgICAgICBObyBuZXcgdGVzdHMu
IFRoZXJlIHNob3VsZCBiZSBubyBjaGFuZ2UgaW4gYmVoYXZpb3IsIGV4Y2VwdCBwb3NzaWJseQor
ICAgICAgICBhIHBlcmZvcm1hbmNlIGltcHJvdmVtZW50IGluIHNvbWUgY2FzZXMuCisKKyAgICAg
ICAgKiBjc3MvU3R5bGVSZXNvbHZlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29s
dmVyOjpjYW5TaGFyZVN0eWxlV2l0aEVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVS
ZXNvbHZlcjo6bG9jYXRlU2hhcmVkU3R5bGUpOgorCiAyMDEyLTExLTAyICBCYWxhenMgS2VsZW1l
biAgPGtiYWxhenNAd2Via2l0Lm9yZz4KIAogICAgICAgICBbUXRdW1dLMl0gc2V0UGxhdGZvcm1T
dHJhdGVnaWVzIGFsd2F5cyBhc3NlcnRzIGFmdGVyIHIxMzI3NDQKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVJlc29sdmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJlc29sdmVyLmNwcAppbmRleCAxYjcyZjJmZmRmNGRjNmEwNTg4NjE5ZTA4NmE1OTcyMGFhMGJk
NWM1Li43Zjc5ODAyNzRjNDMxNzM5OGI3YWIyMTZmNzY1OTE4M2Y1ZjFlN2RkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCkBAIC0xMTk5LDggKzExOTksNiBAQCBib29sIFN0eWxl
UmVzb2x2ZXI6OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudChTdHlsZWRFbGVtZW50KiBlbGVtZW50
KSBjb25zdAogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGVsZW1lbnQgPT0gZWxlbWVu
dC0+ZG9jdW1lbnQoKS0+Y3NzVGFyZ2V0KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBp
ZiAobV9lbGVtZW50ID09IG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+Y3NzVGFyZ2V0KCkpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKICAgICBpZiAoZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZShYTUxO
YW1lczo6bGFuZ0F0dHIpICE9IG1fZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZShYTUxOYW1lczo6
bGFuZ0F0dHIpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYgKGVsZW1lbnQtPmZhc3RH
ZXRBdHRyaWJ1dGUobGFuZ0F0dHIpICE9IG1fZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZShsYW5n
QXR0cikpCkBAIC0xMjE2LDkgKzEyMTQsNyBAQCBib29sIFN0eWxlUmVzb2x2ZXI6OmNhblNoYXJl
U3R5bGVXaXRoRWxlbWVudChTdHlsZWRFbGVtZW50KiBlbGVtZW50KSBjb25zdAogCiAjaWYgRU5B
QkxFKFBST0dSRVNTX0VMRU1FTlQpCiAgICAgaWYgKGVsZW1lbnQtPmhhc1RhZ05hbWUocHJvZ3Jl
c3NUYWcpKSB7Ci0gICAgICAgIGlmICghbV9lbGVtZW50LT5oYXNUYWdOYW1lKHByb2dyZXNzVGFn
KSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLQorICAgICAgICBBU1NFUlQoIW1fZWxlbWVu
dC0+aGFzVGFnTmFtZShwcm9ncmVzc1RhZykpOwogICAgICAgICBIVE1MUHJvZ3Jlc3NFbGVtZW50
KiB0aGlzUHJvZ3Jlc3NFbGVtZW50ID0gc3RhdGljX2Nhc3Q8SFRNTFByb2dyZXNzRWxlbWVudCo+
KGVsZW1lbnQpOwogICAgICAgICBIVE1MUHJvZ3Jlc3NFbGVtZW50KiBvdGhlclByb2dyZXNzRWxl
bWVudCA9IHN0YXRpY19jYXN0PEhUTUxQcm9ncmVzc0VsZW1lbnQqPihtX2VsZW1lbnQpOwogICAg
ICAgICBpZiAodGhpc1Byb2dyZXNzRWxlbWVudC0+aXNEZXRlcm1pbmF0ZSgpICE9IG90aGVyUHJv
Z3Jlc3NFbGVtZW50LT5pc0RldGVybWluYXRlKCkpCkBAIC0xMjU1LDcgKzEyNTEsNyBAQCBib29s
IFN0eWxlUmVzb2x2ZXI6OmNhblNoYXJlU3R5bGVXaXRoRWxlbWVudChTdHlsZWRFbGVtZW50KiBl
bGVtZW50KSBjb25zdAogICAgICAgICByZXR1cm4gZmFsc2U7CiAjZW5kaWYKIAotICAgIGlmIChl
bGVtZW50SGFzRGlyZWN0aW9uQXV0byhlbGVtZW50KSB8fCBlbGVtZW50SGFzRGlyZWN0aW9uQXV0
byhtX2VsZW1lbnQpKQorICAgIGlmIChlbGVtZW50SGFzRGlyZWN0aW9uQXV0byhlbGVtZW50KSkK
ICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYgKGVsZW1lbnQtPmhhc0NsYXNzKCkpIHsK
QEAgLTEzMjEsNiArMTMxNywxMCBAQCBSZW5kZXJTdHlsZSogU3R5bGVSZXNvbHZlcjo6bG9jYXRl
U2hhcmVkU3R5bGUoKQogICAgICAgICByZXR1cm4gMDsKICAgICBpZiAobV9zdHlsZWRFbGVtZW50
LT5oYXNTY29wZWRIVE1MU3R5bGVDaGlsZCgpKQogICAgICAgICByZXR1cm4gMDsKKyAgICBpZiAo
bV9lbGVtZW50ID09IG1fZWxlbWVudC0+ZG9jdW1lbnQoKS0+Y3NzVGFyZ2V0KCkpCisgICAgICAg
IHJldHVybiAwOworICAgIGlmIChlbGVtZW50SGFzRGlyZWN0aW9uQXV0byhtX2VsZW1lbnQpKQor
ICAgICAgICByZXR1cm4gMDsKIAogICAgIC8vIENoZWNrIHByZXZpb3VzIHNpYmxpbmdzIGFuZCB0
aGVpciBjb3VzaW5zLgogICAgIHVuc2lnbmVkIGNvdW50ID0gMDsK
</data>
<flag name="review"
          id="186257"
          type_id="1"
          status="+"
          setter="darin"
    />
    <flag name="commit-queue"
          id="186258"
          type_id="3"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>