<?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>221320</bug_id>
          
          <creation_ts>2021-02-02 22:06:44 -0800</creation_ts>
          <short_desc>Avoid frequent calls to HTMLFormControlElement::updateValidity() when constructing form control elements</short_desc>
          <delta_ts>2021-02-03 20:10:22 -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>Forms</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mifenton</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1725023</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-02 22:06:44 -0800</bug_when>
    <thetext>Avoid frequent calls to HTMLFormControlElement::updateValidity() when constructing form control elements</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725024</commentid>
    <comment_count>1</comment_count>
      <attachid>419107</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-02 22:07:25 -0800</bug_when>
    <thetext>Created attachment 419107
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725347</commentid>
    <comment_count>2</comment_count>
      <attachid>419107</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2021-02-03 15:05:24 -0800</bug_when>
    <thetext>Comment on attachment 419107
Patch

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

&gt; Source/WebCore/html/HTMLInputElement.cpp:826
&gt; +    DelayedUpdateValidityScope delayedUpdateValidityScope(*this);
&gt; +

I don&apos;t think it&apos;s possible for this function to get called recursively.
Why don&apos;t we just put a boolean like m_initializingParserSetAttributes instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725351</commentid>
    <comment_count>3</comment_count>
      <attachid>419107</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2021-02-03 15:08:32 -0800</bug_when>
    <thetext>Comment on attachment 419107
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725458</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2021-02-03 20:01:32 -0800</bug_when>
    <thetext>I tried the boolean thing and it just feels uglier.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725460</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-02-03 20:09:31 -0800</bug_when>
    <thetext>Committed r272354: &lt;https://trac.webkit.org/changeset/272354&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 419107.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1725463</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-02-03 20:10:22 -0800</bug_when>
    <thetext>&lt;rdar://problem/73962613&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>419107</attachid>
            <date>2021-02-02 22:07:25 -0800</date>
            <delta_ts>2021-02-03 20:09:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-221320-20210202220725.patch</filename>
            <type>text/plain</type>
            <size>5268</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjcyMjE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTRiOWUxYzFjNmEzZmVl
Y2YyNTJlZTJlNWQ5MGJmN2M4MDY0N2U4MC4uNzM2ODQxNjhjNzRiY2YwZjU5YjQ5NjYyOWJiZGVk
N2VlY2VlMzViNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDIxLTAyLTAyICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEF2b2lkIGZyZXF1
ZW50IGNhbGxzIHRvIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnVwZGF0ZVZhbGlkaXR5KCkgd2hl
biBjb25zdHJ1Y3RpbmcgZm9ybSBjb250cm9sIGVsZW1lbnRzCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjEzMjAKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojp1cGRh
dGVWYWxpZGl0eSgpIGNhbiBnZXQgY2FsbGVkIG11bHRpcGxlIHRpbWVzIGluc2lkZQorICAgICAg
ICBIVE1MSW5wdXRFbGVtZW50OjpwYXJzZXJEaWRTZXRBdHRyaWJ1dGVzKCksIHNvIGFkZCBhIHNp
bXBsZSBkZWxheWluZyBzY29wZSBzbyB0aGF0CisgICAgICAgIHZhbGlkaXR5IGlzIG9ubHkgdXBk
YXRlZCBvbmNlIGF0IHRoZSBlbmQuCisKKyAgICAgICAgKiBodG1sL0hUTUxGb3JtQ29udHJvbEVs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1Db250cm9sRWxlbWVudDo6ZW5k
RGVsYXlpbmdVcGRhdGVWYWxpZGl0eSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRm9ybUNvbnRy
b2xFbGVtZW50Ojpjb21wdXRlV2lsbFZhbGlkYXRlIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnVwZGF0ZVZhbGlkaXR5KToKKyAgICAgICAgKiBodG1s
L0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29u
dHJvbEVsZW1lbnQ6OnN0YXJ0RGVsYXlpbmdVcGRhdGVWYWxpZGl0eSk6CisgICAgICAgIChXZWJD
b3JlOjpEZWxheWVkVXBkYXRlVmFsaWRpdHlTY29wZTo6RGVsYXllZFVwZGF0ZVZhbGlkaXR5U2Nv
cGUpOgorICAgICAgICAoV2ViQ29yZTo6RGVsYXllZFVwZGF0ZVZhbGlkaXR5U2NvcGU6On5EZWxh
eWVkVXBkYXRlVmFsaWRpdHlTY29wZSk6CisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1lbnQ6OnBhcnNlckRpZFNldEF0
dHJpYnV0ZXMpOgorCiAyMDIxLTAyLTAyICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBw
bGUuY29tPgogCiAgICAgICAgIFJlbmFtZSBIVE1MRm9ybUNvbnRyb2xFbGVtZW50OjpzZXROZWVk
c1dpbGxWYWxpZGF0ZUNoZWNrKCkgdG8gdXBkYXRlV2lsbFZhbGlkYXRlQW5kVmFsaWRpdHkoKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKaW5kZXgg
MTlkZDk3NmIxOWJmNjNlMThjMWM0MzBjYjRmMmI5ZjIyYTE0YjM2My4uYTRhNTNkYjE5MDg0ZWFm
MTgxZmM1YTNlMjlkZmE3NjQxZGY3M2RkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCkBAIC00MTAsMTIgKzQxMCwxOCBAQCBib29sIEhUTUxG
b3JtQ29udHJvbEVsZW1lbnQ6Om1hdGNoZXNJbnZhbGlkUHNldWRvQ2xhc3MoKSBjb25zdAogICAg
IHJldHVybiB3aWxsVmFsaWRhdGUoKSAmJiAhaXNWYWxpZEZvcm1Db250cm9sRWxlbWVudCgpOwog
fQogCit2b2lkIEhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OmVuZERlbGF5aW5nVXBkYXRlVmFsaWRp
dHkoKQoreworICAgIEFTU0VSVChtX2RlbGF5ZWRVcGRhdGVWYWxpZGl0eUNvdW50KTsKKyAgICBp
ZiAoIS0tbV9kZWxheWVkVXBkYXRlVmFsaWRpdHlDb3VudCkKKyAgICAgICAgdXBkYXRlVmFsaWRp
dHkoKTsKK30KKwogYm9vbCBIVE1MRm9ybUNvbnRyb2xFbGVtZW50Ojpjb21wdXRlV2lsbFZhbGlk
YXRlKCkgY29uc3QKIHsKICAgICBpZiAobV9kYXRhTGlzdEFuY2VzdG9yU3RhdGUgPT0gVW5rbm93
bikgewogI2lmIEVOQUJMRShEQVRBTElTVF9FTEVNRU5UKQotICAgICAgICBtX2RhdGFMaXN0QW5j
ZXN0b3JTdGF0ZSA9IGFuY2VzdG9yc09mVHlwZTxIVE1MRGF0YUxpc3RFbGVtZW50PigqdGhpcyku
Zmlyc3QoKQotICAgICAgICAgICAgPyBJbnNpZGVEYXRhTGlzdCA6IE5vdEluc2lkZURhdGFMaXN0
OworICAgICAgICBtX2RhdGFMaXN0QW5jZXN0b3JTdGF0ZSA9IGFuY2VzdG9yc09mVHlwZTxIVE1M
RGF0YUxpc3RFbGVtZW50PigqdGhpcykuZmlyc3QoKSA/IEluc2lkZURhdGFMaXN0IDogTm90SW5z
aWRlRGF0YUxpc3Q7CiAjZWxzZQogICAgICAgICBtX2RhdGFMaXN0QW5jZXN0b3JTdGF0ZSA9IE5v
dEluc2lkZURhdGFMaXN0OwogI2VuZGlmCkBAIC01NzYsNiArNTgyLDkgQEAgdm9pZCBIVE1MRm9y
bUNvbnRyb2xFbGVtZW50OjpkaWRDaGFuZ2VGb3JtKCkKIAogdm9pZCBIVE1MRm9ybUNvbnRyb2xF
bGVtZW50Ojp1cGRhdGVWYWxpZGl0eSgpCiB7CisgICAgaWYgKG1fZGVsYXllZFVwZGF0ZVZhbGlk
aXR5Q291bnQpCisgICAgICAgIHJldHVybjsKKwogICAgIGJvb2wgd2lsbFZhbGlkYXRlID0gdGhp
cy0+d2lsbFZhbGlkYXRlKCk7CiAgICAgYm9vbCB3YXNWYWxpZCA9IG1faXNWYWxpZDsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmggYi9T
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJvbEVsZW1lbnQuaAppbmRleCAzOThkZjBh
OTBmM2NkNmU2YzNhNDQxYzhhMTg1MjhiNjdjZDg3MGE4Li5mNTQ1ZmZkNDZlNTI4MTI0ODk5NDhh
NzA1MjM1ZjliMTU4NDIwZTlmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxG
b3JtQ29udHJvbEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29u
dHJvbEVsZW1lbnQuaApAQCAtNDQsNiArNDQsNyBAQCBjbGFzcyBWYWxpZGF0aW9uTWVzc2FnZTsK
IC8vIHVubGVzcyB0aGVyZSBpcyBhIHNwZWNpYWwgcmVhc29uLgogY2xhc3MgSFRNTEZvcm1Db250
cm9sRWxlbWVudCA6IHB1YmxpYyBMYWJlbGFibGVFbGVtZW50LCBwdWJsaWMgRm9ybUFzc29jaWF0
ZWRFbGVtZW50IHsKICAgICBXVEZfTUFLRV9JU09fQUxMT0NBVEVEKEhUTUxGb3JtQ29udHJvbEVs
ZW1lbnQpOworICAgIGZyaWVuZCBjbGFzcyBEZWxheWVkVXBkYXRlVmFsaWRpdHlTY29wZTsKIHB1
YmxpYzoKICAgICB2aXJ0dWFsIH5IVE1MRm9ybUNvbnRyb2xFbGVtZW50KCk7CiAKQEAgLTE3Myw2
ICsxNzQsOSBAQCBwcml2YXRlOgogICAgIGJvb2wgaXNWYWxpZEZvcm1Db250cm9sRWxlbWVudCgp
IGNvbnN0OwogCiAgICAgYm9vbCBjb21wdXRlSXNEaXNhYmxlZEJ5RmllbGRzZXRBbmNlc3Rvcigp
IGNvbnN0OworICAgIAorICAgIHZvaWQgc3RhcnREZWxheWluZ1VwZGF0ZVZhbGlkaXR5KCkgeyAr
K21fZGVsYXllZFVwZGF0ZVZhbGlkaXR5Q291bnQ7IH0KKyAgICB2b2lkIGVuZERlbGF5aW5nVXBk
YXRlVmFsaWRpdHkoKTsKIAogICAgIEhUTUxFbGVtZW50JiBhc0hUTUxFbGVtZW50KCkgZmluYWwg
eyByZXR1cm4gKnRoaXM7IH0KICAgICBjb25zdCBIVE1MRm9ybUNvbnRyb2xFbGVtZW50JiBhc0hU
TUxFbGVtZW50KCkgY29uc3QgZmluYWwgeyByZXR1cm4gKnRoaXM7IH0KQEAgLTE4Miw2ICsxODYs
OSBAQCBwcml2YXRlOgogICAgIGJvb2wgbmVlZHNNb3VzZUZvY3VzYWJsZVF1aXJrKCkgY29uc3Q7
CiAKICAgICBzdGQ6OnVuaXF1ZV9wdHI8VmFsaWRhdGlvbk1lc3NhZ2U+IG1fdmFsaWRhdGlvbk1l
c3NhZ2U7CisgICAgCisgICAgdW5zaWduZWQgbV9kZWxheWVkVXBkYXRlVmFsaWRpdHlDb3VudCB7
IDAgfTsKKwogICAgIGJvb2wgbV9pc0ZvY3VzaW5nV2l0aFZhbGlkYXRpb25NZXNzYWdlIHsgZmFs
c2UgfTsKIAogICAgIHVuc2lnbmVkIG1fZGlzYWJsZWQgOiAxOwpAQCAtMjA4LDYgKzIxNSwyNCBA
QCBwcml2YXRlOgogICAgIHVuc2lnbmVkIG1faGFzQXV0b2ZvY3VzZWQgOiAxOwogfTsKIAorY2xh
c3MgRGVsYXllZFVwZGF0ZVZhbGlkaXR5U2NvcGUgeworcHVibGljOgorICAgIERlbGF5ZWRVcGRh
dGVWYWxpZGl0eVNjb3BlKEhUTUxGb3JtQ29udHJvbEVsZW1lbnQmIGVsZW1lbnQpCisgICAgICAg
IDogbV9lbGVtZW50KGVsZW1lbnQpCisgICAgeworICAgICAgICBtX2VsZW1lbnQuc3RhcnREZWxh
eWluZ1VwZGF0ZVZhbGlkaXR5KCk7CisgICAgfQorICAgIAorICAgIH5EZWxheWVkVXBkYXRlVmFs
aWRpdHlTY29wZSgpCisgICAgeworICAgICAgICBtX2VsZW1lbnQuZW5kRGVsYXlpbmdVcGRhdGVW
YWxpZGl0eSgpOworICAgIH0KKworcHJpdmF0ZToKKyAgICBIVE1MRm9ybUNvbnRyb2xFbGVtZW50
JiBtX2VsZW1lbnQ7Cit9OworCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogU1BFQ0lBTEla
RV9UWVBFX1RSQUlUU19CRUdJTihXZWJDb3JlOjpIVE1MRm9ybUNvbnRyb2xFbGVtZW50KQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKaW5kZXggOWQwYzUwMmQzZTJjZTQ2
YjY4Y2E5YTU0NmY5NjhkOGEzNjBkMDYzYS4uMmYzOTE1YjIzMWI5NmRlMDZiNjE0YjM1YTBjYWQ0
YTkzZThjNzY3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCkBA
IC04MjIsNiArODIyLDggQEAgdm9pZCBIVE1MSW5wdXRFbGVtZW50OjpyZWFkT25seVN0YXRlQ2hh
bmdlZCgpCiAKIHZvaWQgSFRNTElucHV0RWxlbWVudDo6cGFyc2VyRGlkU2V0QXR0cmlidXRlcygp
CiB7CisgICAgRGVsYXllZFVwZGF0ZVZhbGlkaXR5U2NvcGUgZGVsYXllZFVwZGF0ZVZhbGlkaXR5
U2NvcGUoKnRoaXMpOworCiAgICAgQVNTRVJUKG1fcGFyc2luZ0luUHJvZ3Jlc3MpOwogICAgIGlu
aXRpYWxpemVJbnB1dFR5cGUoKTsKIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>