<?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>6818</bug_id>
          
          <creation_ts>2006-01-25 20:59:01 -0800</creation_ts>
          <short_desc>garbage collect a bit later when destroying Frame (fixes node leak false positives)</short_desc>
          <delta_ts>2006-01-26 12:26:21 -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>Frames</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</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="Maciej Stachowiak">mjs</reporter>
          <assigned_to name="Maciej Stachowiak">mjs</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>29974</commentid>
    <comment_count>0</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-25 20:59:01 -0800</bug_when>
    <thetext>Frame clears the properties of the window object and garbage collects every time you change documents. This is good, because you don&apos;t want to leak custom properties to the next document, and because much garbage will be created when the properties are cleared.

However, it also does this on destruction. That&apos;s suboptimal, because the window object itself (and everything it keeps alive) will become collectable after the ScriptInterpreter is destroyed. So the clearing is a waste of time, and the garbage collection would be better done later.

On top of all that, this causes false positives from the NodeImpl leak counter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29975</commentid>
    <comment_count>1</comment_count>
      <attachid>5969</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-25 21:03:23 -0800</bug_when>
    <thetext>Created attachment 5969
skip the clear, GC after destroying ScriptInterpreter</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29977</commentid>
    <comment_count>2</comment_count>
      <attachid>5969</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-01-25 21:07:31 -0800</bug_when>
    <thetext>Comment on attachment 5969
skip the clear, GC after destroying ScriptInterpreter

r=me but run the PLT and layout tests.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>5969</attachid>
            <date>2006-01-25 21:03:23 -0800</date>
            <delta_ts>2006-01-25 21:07:31 -0800</delta_ts>
            <desc>skip the clear, GC after destroying ScriptInterpreter</desc>
            <filename>gc-after-interpreter-destruction.patch.txt</filename>
            <type>text/plain</type>
            <size>2741</size>
            <attacher name="Maciej Stachowiak">mjs</attacher>
            
              <data encoding="base64">SW5kZXg6IGtodG1sL2VjbWEva2pzX3Byb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBraHRtbC9lY21h
L2tqc19wcm94eS5jcHAJKHJldmlzaW9uIDEyMzgwKQorKysga2h0bWwvZWNtYS9ranNfcHJveHku
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Niw2ICs0Niw3IEBAIEtKU1Byb3h5SW1wbDo6fktKU1By
b3h5SW1wbCgpCiB7CiAgICAgSlNMb2NrIGxvY2s7CiAgICAgZGVsZXRlIG1fc2NyaXB0OworICAg
IENvbGxlY3Rvcjo6Y29sbGVjdCgpOwogfQogCiBRVmFyaWFudCBLSlNQcm94eUltcGw6OmV2YWx1
YXRlKGNvbnN0IERPTVN0cmluZyYgZmlsZW5hbWUsIGludCBiYXNlTGluZSwgY29uc3QgRE9NU3Ry
aW5nJiBzdHIsIE5vZGVJbXBsICpuKSAKSW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBD
aGFuZ2VMb2cJKHJldmlzaW9uIDEyMzgyKQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDUgKzEsMjEgQEAKIDIwMDYtMDEtMjUgIE1hY2llaiBTdGFjaG93aWFrICA8bWpzQGFwcGxl
LmNvbT4KIAorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisg
ICAgICAgIC0gZ2FyYmFnZSBjb2xsZWN0IGEgYml0IGxhdGVyIHdoZW4gZGVzdHJveWluZyBGcmFt
ZSAoZml4ZXMgbm9kZSBsZWFrIGZhbHNlIHBvc2l0aXZlcykKKyAgICAgICAgaHR0cDovL2J1Z3pp
bGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD02ODE4ICAgICAgIAorCisgICAgICAg
ICoga2h0bWwvZWNtYS9ranNfcHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6S0pTUHJveHlJ
bXBsOjp+S0pTUHJveHlJbXBsKTogR2FyYmFnZSBjb2xsZWN0IGFmdGVyIGRlc3Ryb3lpbmcKKyAg
ICAgICAgdGhlIHNjcmlwdCBpbnRlcnByZXRlci4KKyAgICAgICAgKiBwYWdlL0ZyYW1lLmNwcDoK
KyAgICAgICAgKEZyYW1lOjpjbGVhcik6IEFkZCBhIGJvb2xlYW4gcGFyYW1ldGVyIHRvIGluZGlj
YXRlIHdoZXRoZXIgcHJvcGVydGllcworICAgICAgICBvZiB0aGUgd2luZG93IG9iamVjdCBzaG91
bGQgYWxzbyBiZSBjbGVhcmVkIChkZWZhdWx0cyB0byB0cnVlKS4KKyAgICAgICAgKEZyYW1lOjp+
RnJhbWUpOiBDYWxsIGNsZWFyKGZhbHNlKSBpbnN0ZWFkIG9mIGNsZWFyKCkKKyAgICAgICAgKiBw
YWdlL0ZyYW1lLmg6CisKKzIwMDYtMDEtMjUgIE1hY2llaiBTdGFjaG93aWFrICA8bWpzQGFwcGxl
LmNvbT4KKwogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbi4KIAogICAgICAgICAtIFR1cm4gb24g
Tm9kZUltcGwgbGVhayBjb3VudGVyIGZvciBkZWJ1ZyBidWlsZHMKSW5kZXg6IHBhZ2UvRnJhbWUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBwYWdlL0ZyYW1lLmgJKHJldmlzaW9uIDEyMzgwKQorKysgcGFnZS9G
cmFtZS5oCSh3b3JraW5nIGNvcHkpCkBAIC05MDQsNyArOTA0LDcgQEAgcHJpdmF0ZSBzbG90czoK
IAogICB2b2lkIHNsb3RFbmRMaWZlU3VwcG9ydCgpOwogCi0gIHZpcnR1YWwgdm9pZCBjbGVhcigp
OworICB2aXJ0dWFsIHZvaWQgY2xlYXIoYm9vbCBjbGVhcldpbmRvd1Byb3BlcnRpZXMgPSB0cnVl
KTsKIAogcHJpdmF0ZToKICAgYm9vbCByZXN0b3JlVVJMKCBjb25zdCBLVVJMICZ1cmwgKTsKSW5k
ZXg6IHBhZ2UvRnJhbWUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHBhZ2UvRnJhbWUuY3BwCShyZXZpc2lv
biAxMjM4MCkKKysrIHBhZ2UvRnJhbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMTYsNyArMjE2
LDcgQEAgRnJhbWU6On5GcmFtZSgpCiAgIGRpc2Nvbm5lY3QoIENhY2hlOjpsb2FkZXIoKSwgU0lH
TkFMKCByZXF1ZXN0RmFpbGVkKCBraHRtbDo6RG9jTG9hZGVyKiwga2h0bWw6OkNhY2hlZE9iamVj
dCAqKSApLAogICAgICAgICAgICB0aGlzLCBTTE9UKCBzbG90TG9hZGVyUmVxdWVzdERvbmUoIGto
dG1sOjpEb2NMb2FkZXIqLCBraHRtbDo6Q2FjaGVkT2JqZWN0ICopICkgKTsKIAotICBjbGVhcigp
OworICBjbGVhcihmYWxzZSk7CiAKICAgaWYgKGQtPm1fdmlldykgewogICAgIGQtPm1fdmlldy0+
aGlkZSgpOwpAQCAtNTgxLDcgKzU4MSw3IEBAIGJvb2wgRnJhbWU6OmF1dG9sb2FkSW1hZ2VzKCkg
Y29uc3QKICAgcmV0dXJuIHRydWU7CiB9CiAKLXZvaWQgRnJhbWU6OmNsZWFyKCkKK3ZvaWQgRnJh
bWU6OmNsZWFyKGJvb2wgY2xlYXJXaW5kb3dQcm9wZXJ0aWVzKQogewogICBpZiAoIGQtPm1fYkNs
ZWFyZWQgKQogICAgIHJldHVybjsKQEAgLTU4OSwxMSArNTg5LDExIEBAIHZvaWQgRnJhbWU6OmNs
ZWFyKCkKICAgZC0+bV9iQ2xlYXJpbmcgPSB0cnVlOwogICBkLT5tX21vdXNlUHJlc3NOb2RlID0g
MDsKIAotICBpZiAoIGQtPm1fZG9jICkKKyAgaWYgKGQtPm1fZG9jKQogICAgIGQtPm1fZG9jLT5k
ZXRhY2goKTsKIAogICAvLyBNb3ZpbmcgcGFzdCBkb2Mgc28gdGhhdCBvblVubG9hZCB3b3Jrcy4K
LSAgaWYgKCBkLT5tX2pzY3JpcHQgKQorICBpZiAoY2xlYXJXaW5kb3dQcm9wZXJ0aWVzICYmIGQt
Pm1fanNjcmlwdCkKICAgICBkLT5tX2pzY3JpcHQtPmNsZWFyKCk7CiAKICAgaWYgKCBkLT5tX3Zp
ZXcgKQo=
</data>
<flag name="review"
          id="1409"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>