<?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>138617</bug_id>
          
          <creation_ts>2014-11-11 11:15:57 -0800</creation_ts>
          <short_desc>Avoid looking up the type attribute twice in HTMLInputElement::ensureInputType()</short_desc>
          <delta_ts>2014-11-11 15:49:26 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>138524</dup_id>
          
          <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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1047905</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-11 11:15:57 -0800</bug_when>
    <thetext>We currently call hasAttribute(typeAttr) then if it returns true, we call fastGetAttribute(typeAttr).
First of all, fastHasAttribute() would have been better as it would have avoided attribute synchronization. Secondly, We could call fastGetAttribute(typeAttr) directly and check if the returned value is nullAtom, instead of calling hasAttribute(). This way, we only do the linear attribute search once.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047911</commentid>
    <comment_count>1</comment_count>
      <attachid>241365</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-11 11:19:35 -0800</bug_when>
    <thetext>Created attachment 241365
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047920</commentid>
    <comment_count>2</comment_count>
      <attachid>241365</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-11-11 11:59:52 -0800</bug_when>
    <thetext>Comment on attachment 241365
Patch

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

r=me

&gt; Source/WebCore/ChangeLog:9
&gt; +        calling directly fastGetAttribute(typeAttr) and check if its returns

Should be &quot;call&quot; and &quot;it&quot; instead of &quot;calling&quot; and &quot;its&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1047940</commentid>
    <comment_count>3</comment_count>
      <attachid>241371</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-11 12:46:04 -0800</bug_when>
    <thetext>Created attachment 241371
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1048003</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-11-11 15:49:26 -0800</bug_when>
    <thetext>Merging into Bug 138524.

*** This bug has been marked as a duplicate of bug 138524 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241365</attachid>
            <date>2014-11-11 11:19:35 -0800</date>
            <delta_ts>2014-11-11 12:46:02 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138617-20141111111939.patch</filename>
            <type>text/plain</type>
            <size>2022</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1OTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTkxNjhmNjFhYTZkNTlk
MDFmZDBlZDcxYzA1Y2RhOGRkMTZjMGI3YS4uZmZmYTg0MmU3NzQ4OTkzYTRiOGJjYTJhNjQ2ZDI2
MjkyY2RkNGI5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE0LTExLTExICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgQXZvaWQgbG9va2luZyB1cCB0
aGUgdHlwZSBhdHRyaWJ1dGUgdHdpY2UgaW4gSFRNTElucHV0RWxlbWVudDo6ZW5zdXJlSW5wdXRU
eXBlKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
ODYxNworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIElu
c3RlYWQgb2YgY2FsbGluZyBoYXNBdHRyaWJ1dGUodHlwZUF0dHIpICYmIGZhc3RHZXRBdHRyaWJ1
dGUodHlwZUF0dHIpLAorICAgICAgICBjYWxsaW5nIGRpcmVjdGx5IGZhc3RHZXRBdHRyaWJ1dGUo
dHlwZUF0dHIpIGFuZCBjaGVjayBpZiBpdHMgcmV0dXJucworICAgICAgICBudWxsQXRvbS4gVGhp
cyB3YXksIHdlIGRvbid0IGNhdXNlIHVubmVjZXNzYXJ5IGF0dHJpYnV0ZSBzeW5jaHJvbml6YXRp
b24sCisgICAgICAgIGFuZCB3ZSBsb29rIHVwIHRoZSB0eXBlIGF0dHJpYnV0ZSBvbmx5IG9uY2Ug
KGxvb2sgdXAgaXMgYSBsaW5lYXIgc2VhcmNoKS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIG5v
IGJlaGF2aW9yIGNoYW5nZS4KKworICAgICAgICAqIGh0bWwvSFRNTElucHV0RWxlbWVudC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50OjplbnN1cmVJbnB1dFR5cGUpOgor
CiAyMDE0LTExLTExICBHeXV5b3VuZyBLaW0gIDxneXV5b3VuZy5raW1Ac2Ftc3VuZy5jb20+CiAK
ICAgICAgICAgVXNlIHN0ZDo6dW5pcXVlX3B0cjw+fHN0ZDo6bWFrZV91bmlxdWVfcHRyIGluIFJl
bmRlclRoZW1lRWZsOjpUaGVtZVBhcnRDYWNoZUVudHJ5OjpjcmVhdGUoKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKaW5kZXggODY5ZTM3MDc2N2ZjZGEwMjkzZWUyNTIx
NGRiZWVlMzFkZDk4ZTM5YS4uNWQ4ODU0NzQ5ODcxMTY5ZGM3Mzk1NmE3MWUxODczNDE1MmU1ZWYw
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCkBAIC02MTMsMTQg
KzYxMywxNSBAQCBpbmxpbmUgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjplbnN1cmVJbnB1dFR5cGUo
KQogICAgIGlmIChtX2lucHV0VHlwZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKCFoYXNB
dHRyaWJ1dGUodHlwZUF0dHIpKSB7CisgICAgY29uc3QgQXRvbWljU3RyaW5nJiB0eXBlID0gZmFz
dEdldEF0dHJpYnV0ZSh0eXBlQXR0cik7CisgICAgaWYgKHR5cGUuaXNOdWxsKCkpIHsKICAgICAg
ICAgbV9pbnB1dFR5cGUgPSBJbnB1dFR5cGU6OmNyZWF0ZVRleHQoKnRoaXMpOwogICAgICAgICBl
bnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAg
ICBtX2hhc1R5cGUgPSB0cnVlOwotICAgIG1faW5wdXRUeXBlID0gSW5wdXRUeXBlOjpjcmVhdGUo
KnRoaXMsIGZhc3RHZXRBdHRyaWJ1dGUodHlwZUF0dHIpKTsKKyAgICBtX2lucHV0VHlwZSA9IElu
cHV0VHlwZTo6Y3JlYXRlKCp0aGlzLCB0eXBlKTsKICAgICBlbnN1cmVVc2VyQWdlbnRTaGFkb3dS
b290KCk7CiAgICAgcmVnaXN0ZXJGb3JTdXNwZW5zaW9uQ2FsbGJhY2tJZk5lZWRlZCgpOwogICAg
IHJ1blBvc3RUeXBlVXBkYXRlVGFza3MoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>241371</attachid>
            <date>2014-11-11 12:46:04 -0800</date>
            <delta_ts>2014-11-11 13:11:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138617-20141111124608.patch</filename>
            <type>text/plain</type>
            <size>2029</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1OTY4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTBkNzc2YWJhNTdkNTFh
MjI5NzE2NjE0ODEwOWI2MjMzMzcwMWFkYy4uNWYwM2MwNWVkYjNmNGFiMzc2YzNiZWVkOTc1Mzcw
N2YyYWVhZjBjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIyIEBACiAyMDE0LTExLTExICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKKyAgICAgICAgQXZvaWQgbG9va2luZyB1cCB0
aGUgdHlwZSBhdHRyaWJ1dGUgdHdpY2UgaW4gSFRNTElucHV0RWxlbWVudDo6ZW5zdXJlSW5wdXRU
eXBlKCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
ODYxNworCisgICAgICAgIFJldmlld2VkIGJ5IEdlb2ZmcmV5IEdhcmVuLgorCisgICAgICAgIElu
c3RlYWQgb2YgY2FsbGluZyBoYXNBdHRyaWJ1dGUodHlwZUF0dHIpICYmIGZhc3RHZXRBdHRyaWJ1
dGUodHlwZUF0dHIpLAorICAgICAgICBjYWxsIGRpcmVjdGx5IGZhc3RHZXRBdHRyaWJ1dGUodHlw
ZUF0dHIpIGFuZCBjaGVjayBpZiBpdCByZXR1cm5zIG51bGxBdG9tCisgICAgICAgIFRoaXMgd2F5
LCB3ZSBkb24ndCBjYXVzZSB1bm5lY2Vzc2FyeSBhdHRyaWJ1dGUgc3luY2hyb25pemF0aW9uLCBh
bmQgd2UKKyAgICAgICAgbG9vayB1cCB0aGUgdHlwZSBhdHRyaWJ1dGUgb25seSBvbmNlIChsb29r
IHVwIGlzIGEgbGluZWFyIHNlYXJjaCkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhh
dmlvciBjaGFuZ2UuCisKKyAgICAgICAgKiBodG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6ZW5zdXJlSW5wdXRUeXBlKToKKworMjAx
NC0xMS0xMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgorCiAgICAgICAgIFJlZ3Jl
c3Npb24ocjE3NTk0Nyk6IENhdXNlZCBhc3NlcnRpb25zIGluIGRlYnVnIGJ1aWxkcwogICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM4NjIwCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmluZGV4IDg2OWUzNzA3NjdmY2RhMDI5
M2VlMjUyMTRkYmVlZTMxZGQ5OGUzOWEuLjVkODg1NDc0OTg3MTE2OWRjNzM5NTZhNzFlMTg3MzQx
NTJlNWVmMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcApAQCAt
NjEzLDE0ICs2MTMsMTUgQEAgaW5saW5lIHZvaWQgSFRNTElucHV0RWxlbWVudDo6ZW5zdXJlSW5w
dXRUeXBlKCkKICAgICBpZiAobV9pbnB1dFR5cGUpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlm
ICghaGFzQXR0cmlidXRlKHR5cGVBdHRyKSkgeworICAgIGNvbnN0IEF0b21pY1N0cmluZyYgdHlw
ZSA9IGZhc3RHZXRBdHRyaWJ1dGUodHlwZUF0dHIpOworICAgIGlmICh0eXBlLmlzTnVsbCgpKSB7
CiAgICAgICAgIG1faW5wdXRUeXBlID0gSW5wdXRUeXBlOjpjcmVhdGVUZXh0KCp0aGlzKTsKICAg
ICAgICAgZW5zdXJlVXNlckFnZW50U2hhZG93Um9vdCgpOwogICAgICAgICByZXR1cm47CiAgICAg
fQogCiAgICAgbV9oYXNUeXBlID0gdHJ1ZTsKLSAgICBtX2lucHV0VHlwZSA9IElucHV0VHlwZTo6
Y3JlYXRlKCp0aGlzLCBmYXN0R2V0QXR0cmlidXRlKHR5cGVBdHRyKSk7CisgICAgbV9pbnB1dFR5
cGUgPSBJbnB1dFR5cGU6OmNyZWF0ZSgqdGhpcywgdHlwZSk7CiAgICAgZW5zdXJlVXNlckFnZW50
U2hhZG93Um9vdCgpOwogICAgIHJlZ2lzdGVyRm9yU3VzcGVuc2lvbkNhbGxiYWNrSWZOZWVkZWQo
KTsKICAgICBydW5Qb3N0VHlwZVVwZGF0ZVRhc2tzKCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>