<?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>43813</bug_id>
          
          <creation_ts>2010-08-10 14:48:55 -0700</creation_ts>
          <short_desc>Ensure that parser doesn&apos;t attach children that have been removed by JavaScript event handlers.</short_desc>
          <delta_ts>2010-08-12 16:23:35 -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>Other</rep_platform>
          <op_sys>OS X 10.5</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>
          <dependson>40742</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dimitri Glazkov (Google)">dglazkov</reporter>
          <assigned_to name="Dimitri Glazkov (Google)">dglazkov</assigned_to>
          <cc>abarth</cc>
    
    <cc>aestes</cc>
    
    <cc>hyatt</cc>
    
    <cc>jamesr</cc>
    
    <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>262869</commentid>
    <comment_count>0</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-08-10 14:48:55 -0700</bug_when>
    <thetext>Ensure that parser doesn&apos;t attach children that have been removed by JavaScript event handlers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>262872</commentid>
    <comment_count>1</comment_count>
      <attachid>64048</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-08-10 14:53:08 -0700</bug_when>
    <thetext>Created attachment 64048
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>262893</commentid>
    <comment_count>2</comment_count>
      <attachid>64048</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-10 15:38:43 -0700</bug_when>
    <thetext>Comment on attachment 64048
Patch

Oh man...  This patch looks correct, but it enscarifies me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>262919</commentid>
    <comment_count>3</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2010-08-10 17:31:42 -0700</bug_when>
    <thetext>Looks good to me as well.  Mitz, Hyatt - have any thoughts on this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263598</commentid>
    <comment_count>4</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-08-11 21:43:54 -0700</bug_when>
    <thetext>I land this yes? :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263600</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-11 21:59:12 -0700</bug_when>
    <thetext>I think so.  :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263601</commentid>
    <comment_count>6</comment_count>
    <who name="">mitz</who>
    <bug_when>2010-08-11 22:01:51 -0700</bug_when>
    <thetext>The change looks correct to me. Andy, if you have any test cases that you’ve developed while investigating bug 40742, other than the regression test, you can verify that this patch doesn’t regress them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264021</commentid>
    <comment_count>7</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2010-08-12 15:15:11 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; The change looks correct to me. Andy, if you have any test cases that you’ve developed while investigating bug 40742, other than the regression test, you can verify that this patch doesn’t regress them.

Looks good to me.  I checked in several additional tests covering this behavior in http://trac.webkit.org/changeset/61744, and it looks like those tests are passing.

Dimitri, for my own edification, I&apos;m curious how the lazy-attach optimization affects &lt;link&gt; elements.  I had convinced myself it wasn&apos;t when writing this patch, but I might have missed something.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264030</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-12 15:30:25 -0700</bug_when>
    <thetext>I think we&apos;d like to lazy attach everything.  Once you have one element that doesn&apos;t support lazy attach, you have to break out of your lazy slumber for all it&apos;s ancestors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264072</commentid>
    <comment_count>9</comment_count>
      <attachid>64048</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-08-12 16:23:30 -0700</bug_when>
    <thetext>Comment on attachment 64048
Patch

Clearing flags on attachment: 64048

Committed r65281: &lt;http://trac.webkit.org/changeset/65281&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264073</commentid>
    <comment_count>10</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-08-12 16:23:35 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64048</attachid>
            <date>2010-08-10 14:53:08 -0700</date>
            <delta_ts>2010-08-12 16:23:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-43813-20100810145307.patch</filename>
            <type>text/plain</type>
            <size>4755</size>
            <attacher name="Dimitri Glazkov (Google)">dglazkov</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
ZmQzMTIyNDY2ZTZjZjQwNjc3N2IwZDJjNTMzYmYyYWQ2MDc4YjM3Zi4uMzk0ZDIzZjc0MmQ3N2Ey
YTk3NmYyMmZkMDA2YmQzMDM4NTA0N2NlMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0wOC0xMCAgRGlt
aXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEVuc3VyZSB0aGF0IHBhcnNlciBkb2Vzbid0
IGF0dGFjaCBjaGlsZHJlbiB0aGF0IGhhdmUgYmVlbiByZW1vdmVkIGJ5IEphdmFTY3JpcHQgZXZl
bnQgaGFuZGxlcnMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD00MzgxMworCisgICAgICAgIFRoaXMgcGF0Y2ggcmUtZml4ZXMgYnVnIDQwNzQyIGluIGEg
d2F5IHRoYXQga2VlcHMgYWxsb3dpbmcgSFRNTExpbmtFbGVtZW50CisgICAgICAgIHRvIGxhenkt
YXR0YWNoLgorCisgICAgICAgICogaHRtbC9IVE1MQ29uc3RydWN0aW9uU2l0ZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MQ29uc3RydWN0aW9uU2l0ZTo6YXR0YWNoKTogQWRkZWQgcGFyZW50
IGNoZWNrLgorICAgICAgICAqIGh0bWwvSFRNTExpbmtFbGVtZW50LmNwcDogQmFzaWNhbGx5IHVu
ZG9lcyBjaGFuZ2VzIGludHJvZHVjZWQgYnkgcjYxNDI0LgorICAgICAgICAqIGh0bWwvSFRNTExp
bmtFbGVtZW50Lmg6IERpdHRvLgorCiAyMDEwLTA4LTEwICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBh
cm9nYUBwYXJvZ2EuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTENvbnN0cnVjdGlvblNpdGUuY3BwIGIvV2ViQ29yZS9o
dG1sL0hUTUxDb25zdHJ1Y3Rpb25TaXRlLmNwcAppbmRleCAxYTlhMzczZTAyNzg1YzkxNTVhN2Qw
ODE0NzNiZGMwNWJhMDhjMzBmLi5hZGVmZTRkNTYzZTFlZmQ1NDliZGQ2MDE1NGY1NGJlYzk2NDMx
ZTkwIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTENvbnN0cnVjdGlvblNpdGUuY3BwCisr
KyBiL1dlYkNvcmUvaHRtbC9IVE1MQ29uc3RydWN0aW9uU2l0ZS5jcHAKQEAgLTk4LDYgKzk4LDEy
IEBAIFBhc3NSZWZQdHI8Q2hpbGRUeXBlPiBIVE1MQ29uc3RydWN0aW9uU2l0ZTo6YXR0YWNoKE5v
ZGUqIHBhcmVudCwgUGFzc1JlZlB0cjxDaGlsCiAgICAgfQogCiAgICAgcGFyZW50LT5wYXJzZXJB
ZGRDaGlsZChjaGlsZCk7CisKKyAgICAvLyBBbiBldmVudCBoYW5kbGVyIChET00gTXV0YXRpb24s
IGJlZm9yZWxvYWQsIGV0IGFsLikgY291bGQgaGF2ZSByZW1vdmVkCisgICAgLy8gdGhlIGNoaWxk
LCBpbiB3aGljaCBjYXNlIHdlIHNob3VsZG4ndCB0cnkgYXR0YWNoaW5nIGl0LgorICAgIGlmICgh
Y2hpbGQtPnBhcmVudE5vZGUoKSkKKyAgICAgICAgcmV0dXJuIGNoaWxkLnJlbGVhc2UoKTsKKwog
ICAgIC8vIEl0J3Mgc2xpZ2h0bHkgdW5mb3J0dW5hdGUgdGhhdCB3ZSBuZWVkIHRvIGhvbGQgYSBy
ZWZlcmVuY2UgdG8gY2hpbGQKICAgICAvLyBoZXJlIHRvIGNhbGwgYXR0YWNoKCkuICBXZSBzaG91
bGQgaW52ZXN0aWdhdGUgd2hldGhlciB3ZSBjYW4gcmVseSBvbgogICAgIC8vIHxwYXJlbnR8IHRv
IGhvbGQgYSByZWYgYXQgdGhpcyBwb2ludC4gIEluIHRoZSBjb21tb24gY2FzZSAoYXQgbGVhc3QK
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuY3BwIGIvV2ViQ29yZS9o
dG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKaW5kZXggZmMxMzE2NWM3ZGY3ZWU5MzYzYTZlNGEzZjhm
MTY1NThlZTRjYTI5OS4uYjlmYjhmMDcxMDk0MWQxMTZlOTBkYzUyNGNhMTFjMmM5ZjFiMzY0OSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKKysrIGIvV2ViQ29y
ZS9odG1sL0hUTUxMaW5rRWxlbWVudC5jcHAKQEAgLTUxLDcgKzUxLDYgQEAgaW5saW5lIEhUTUxM
aW5rRWxlbWVudDo6SFRNTExpbmtFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUs
IERvY3VtZW50KgogICAgICwgbV9kaXNhYmxlZFN0YXRlKFVuc2V0KQogICAgICwgbV9sb2FkaW5n
KGZhbHNlKQogICAgICwgbV9jcmVhdGVkQnlQYXJzZXIoY3JlYXRlZEJ5UGFyc2VyKQotICAgICwg
bV9zaG91bGRQcm9jZXNzQWZ0ZXJBdHRhY2goZmFsc2UpCiB7CiAgICAgQVNTRVJUKGhhc1RhZ05h
bWUobGlua1RhZykpOwogfQpAQCAtMjQyLDI4ICsyNDEsMTIgQEAgdm9pZCBIVE1MTGlua0VsZW1l
bnQ6OnByb2Nlc3MoKQogICAgICAgICBkb2N1bWVudCgpLT51cGRhdGVTdHlsZVNlbGVjdG9yKCk7
CiAgICAgfQogfQotICAgIAotdm9pZCBIVE1MTGlua0VsZW1lbnQ6OnByb2Nlc3NDYWxsYmFjayhO
b2RlKiBub2RlKQotewotICAgIEFTU0VSVF9BUkcobm9kZSwgbm9kZSAmJiBub2RlLT5oYXNUYWdO
YW1lKGxpbmtUYWcpKTsKLSAgICBzdGF0aWNfY2FzdDxIVE1MTGlua0VsZW1lbnQqPihub2RlKS0+
cHJvY2VzcygpOwotfQogCiB2b2lkIEhUTUxMaW5rRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1l
bnQoKQogewogICAgIEhUTUxFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgpOwogICAgIGRv
Y3VtZW50KCktPmFkZFN0eWxlU2hlZXRDYW5kaWRhdGVOb2RlKHRoaXMsIG1fY3JlYXRlZEJ5UGFy
c2VyKTsKIAotICAgIC8vIFNpbmNlIHByb2Nlc3NpbmcgYSBzdHlsZXNoZWV0IGxpbmsgY2F1c2Vz
IGEgYmVmb3JlbG9hZCBldmVudAotICAgIC8vIHRvIGZpcmUsIGl0IGlzIHBvc3NpYmxlIGZvciBK
YXZhU2NyaXB0IHRvIHJlbW92ZSB0aGUgZWxlbWVudCBpbiB0aGUgbWlkc3QKLSAgICAvLyBvZiBp
dCBiZWluZyBpbnNlcnRlZCBpbnRvIHRoZSBET00sIHdoaWNoIGNhbiBsZWFkIHRvIGFzc2VydGlv
biBmYWlsdXJlcwotICAgIC8vIGFuZCBjcmFzaGVzLiBBdm9pZCB0aGlzIGJ5IHBvc3Rwb25pbmcg
dGhlIGJlZm9yZWxvYWQvbG9hZCB1bnRpbCBhZnRlcgotICAgIC8vIGF0dGFjaCBpZiB0aGVyZSBh
cmUgYmVmb3JlbG9hZCBsaXN0ZW5lcnMuCi0gICAgaWYgKGRvY3VtZW50KCktPmhhc0xpc3RlbmVy
VHlwZShEb2N1bWVudDo6QkVGT1JFTE9BRF9MSVNURU5FUikpIHsKLSAgICAgICAgbV9zaG91bGRQ
cm9jZXNzQWZ0ZXJBdHRhY2ggPSB0cnVlOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCiAgICAg
cHJvY2VzcygpOwogfQogCkBAIC0yNzYsMjAgKzI1OSw4IEBAIHZvaWQgSFRNTExpbmtFbGVtZW50
OjpyZW1vdmVkRnJvbURvY3VtZW50KCkKICAgICAvLyBGSVhNRTogSXQncyB0ZXJyaWJsZSB0byBk
byBhIHN5bmNocm9ub3VzIHVwZGF0ZSBvZiB0aGUgc3R5bGUgc2VsZWN0b3IganVzdCBiZWNhdXNl
IGEgPHN0eWxlPiBvciA8bGluaz4gZWxlbWVudCBnb3QgcmVtb3ZlZC4KICAgICBpZiAoZG9jdW1l
bnQoKS0+cmVuZGVyZXIoKSkKICAgICAgICAgZG9jdW1lbnQoKS0+dXBkYXRlU3R5bGVTZWxlY3Rv
cigpOwotICAgIAotICAgIG1fc2hvdWxkUHJvY2Vzc0FmdGVyQXR0YWNoID0gZmFsc2U7CiB9CiAK
LXZvaWQgSFRNTExpbmtFbGVtZW50OjphdHRhY2goKQotewotICAgIGlmIChtX3Nob3VsZFByb2Nl
c3NBZnRlckF0dGFjaCkgewotICAgICAgICBtX3Nob3VsZFByb2Nlc3NBZnRlckF0dGFjaCA9IGZh
bHNlOwotICAgICAgICBxdWV1ZVBvc3RBdHRhY2hDYWxsYmFjaygmSFRNTExpbmtFbGVtZW50Ojpw
cm9jZXNzQ2FsbGJhY2ssIHRoaXMpOwotICAgIH0KLQotICAgIEhUTUxFbGVtZW50OjphdHRhY2go
KTsKLX0KLSAgICAKIHZvaWQgSFRNTExpbmtFbGVtZW50OjpmaW5pc2hQYXJzaW5nQ2hpbGRyZW4o
KQogewogICAgIG1fY3JlYXRlZEJ5UGFyc2VyID0gZmFsc2U7CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2h0bWwvSFRNTExpbmtFbGVtZW50LmggYi9XZWJDb3JlL2h0bWwvSFRNTExpbmtFbGVtZW50LmgK
aW5kZXggZGIwNjllYjRhOGU4NzNmNzJjNDAzYjFkMTFkZTVmN2E1NGUxY2M5Zi4uZjhjY2QxMjlk
MTIyZDg5NjMxMWY0ZjMzOWVjODBiZGMwZmUxY2U4ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0hUTUxMaW5rRWxlbWVudC5oCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuaApA
QCAtNzMsOSArNzMsNiBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc0Rpc2FibGVkKCkgY29uc3QgeyBy
ZXR1cm4gbV9kaXNhYmxlZFN0YXRlID09IERpc2FibGVkOyB9CiAgICAgYm9vbCBpc0VuYWJsZWRW
aWFTY3JpcHQoKSBjb25zdCB7IHJldHVybiBtX2Rpc2FibGVkU3RhdGUgPT0gRW5hYmxlZFZpYVNj
cmlwdDsgfQogICAgIGJvb2wgaXNJY29uKCkgY29uc3QgeyByZXR1cm4gbV9yZWxBdHRyaWJ1dGUu
bV9pc0ljb247IH0KLSAgICAKLSAgICB2aXJ0dWFsIHZvaWQgYXR0YWNoKCk7Ci0gICAgdmlydHVh
bCBib29sIGNhbkxhenlBdHRhY2goKSB7IHJldHVybiBmYWxzZTsgfQogCiBwcml2YXRlOgogICAg
IHZpcnR1YWwgSFRNTFRhZ1N0YXR1cyBlbmRUYWdSZXF1aXJlbWVudCgpIGNvbnN0IHsgcmV0dXJu
IFRhZ1N0YXR1c0ZvcmJpZGRlbjsgfQpAQCAtMTI1LDcgKzEyMiw2IEBAIHByaXZhdGU6CiAgICAg
UmVsQXR0cmlidXRlIG1fcmVsQXR0cmlidXRlOwogICAgIGJvb2wgbV9sb2FkaW5nOwogICAgIGJv
b2wgbV9jcmVhdGVkQnlQYXJzZXI7Ci0gICAgYm9vbCBtX3Nob3VsZFByb2Nlc3NBZnRlckF0dGFj
aDsKIH07CiAKIH0gLy9uYW1lc3BhY2UK
</data>

          </attachment>
      

    </bug>

</bugzilla>