<?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>30337</bug_id>
          
          <creation_ts>2009-10-13 10:49:41 -0700</creation_ts>
          <short_desc>Web Inspector: Should be able to delete nodes from the Elements Tree</short_desc>
          <delta_ts>2009-10-15 14:32:43 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Brian Weinstein">bweinstein</reporter>
          <assigned_to name="Brian Weinstein">bweinstein</assigned_to>
          <cc>aroben</cc>
    
    <cc>joepeck</cc>
    
    <cc>pfeldman</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>154373</commentid>
    <comment_count>0</comment_count>
    <who name="Brian Weinstein">bweinstein</who>
    <bug_when>2009-10-13 10:49:41 -0700</bug_when>
    <thetext>If you are trying to create a reduced test case, or figure out which element is causing layout bugs, it would be nice to be able to delete nodes from the Web Inspector Elements Tree by pressing delete when a node is selected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154375</commentid>
    <comment_count>1</comment_count>
      <attachid>41113</attachid>
    <who name="Brian Weinstein">bweinstein</who>
    <bug_when>2009-10-13 11:00:58 -0700</bug_when>
    <thetext>Created attachment 41113
Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154376</commentid>
    <comment_count>2</comment_count>
      <attachid>41113</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-10-13 11:05:52 -0700</bug_when>
    <thetext>Comment on attachment 41113
Fix

Feedback given in person.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154383</commentid>
    <comment_count>3</comment_count>
      <attachid>41116</attachid>
    <who name="Brian Weinstein">bweinstein</who>
    <bug_when>2009-10-13 11:45:34 -0700</bug_when>
    <thetext>Created attachment 41116
Addresses Tim&apos;s comments</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154384</commentid>
    <comment_count>4</comment_count>
      <attachid>41116</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-10-13 11:55:04 -0700</bug_when>
    <thetext>Comment on attachment 41116
Addresses Tim&apos;s comments

&gt; +    if (code != 0)

No need for &quot;!= 0&quot; here.


&gt; +        var self = this;

Move this line closer to the removeNodeCallback function.


&gt; +        function removeNodeCallback(removedNodeId) {

Put the brace on the next line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154386</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-10-13 12:08:47 -0700</bug_when>
    <thetext>&gt; +void InspectorBackend::removeNode(long callId, long nodeId)
&gt; +{    
&gt; +    Node* node = nodeForId(nodeId);
&gt; +    if (!node)
&gt; +        return;
&gt; +
&gt; +    Node* parentNode = node-&gt;parentNode();
&gt; +    if (!parentNode)
&gt; +        return;
&gt; +
&gt; +    ExceptionCode code;
&gt; +    parentNode-&gt;removeChild(node, code);
&gt; +    
&gt; +    if (code != 0)
&gt; +        return;

Returns above prevent you from calling didRemoveNode callback. This results in memory leaks on the frontend side. All callbacks should be actually called so that all functions are released in the frontend. You can add success/result code parameter there if you need code to behave differently depending on the operation outcome.

&gt; -            if (!updateBreadcrumbs &amp;&amp; (this.focusedDOMNode === parent || isAncestor(this.focusedDOMNode, parent)))
&gt; +            if (!updateBreadcrumbs &amp;&amp; (this.focusedDOMNode === parent || isAncestorNode(this.focusedDOMNode, parent)))

Thanks for fixing it. My git branch for that got lost...

&gt; +        function removeNodeCallback(removedNodeId) {

{ should be on the next line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154393</commentid>
    <comment_count>6</comment_count>
      <attachid>41118</attachid>
    <who name="Brian Weinstein">bweinstein</who>
    <bug_when>2009-10-13 12:55:57 -0700</bug_when>
    <thetext>Created attachment 41118
Fixes Leak</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154396</commentid>
    <comment_count>7</comment_count>
      <attachid>41118</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-10-13 13:01:55 -0700</bug_when>
    <thetext>Comment on attachment 41118
Fixes Leak

&gt; +            if (removedNodeId == -1)
&gt; +                return;

Use removedNodeId === -1 instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>154902</commentid>
    <comment_count>8</comment_count>
    <who name="Brian Weinstein">bweinstein</who>
    <bug_when>2009-10-15 14:32:43 -0700</bug_when>
    <thetext>Fix committed in http://trac.webkit.org/changeset/49505, and leak fix commited in http://trac.webkit.org/changeset/49506.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41113</attachid>
            <date>2009-10-13 11:00:58 -0700</date>
            <delta_ts>2009-10-13 11:45:34 -0700</delta_ts>
            <desc>Fix</desc>
            <filename>elements_delete.patch</filename>
            <type>text/plain</type>
            <size>7069</size>
            <attacher name="Brian Weinstein">bweinstein</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0OTUwNCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjUgQEAKKzIwMDktMTAtMTMgIEJyaWFuIFdlaW5zdGVpbiAgPGJ3ZWluc3RlaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEZpeGVzIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzAzMzc+
LgorICAgICAgICBXZWIgSW5zcGVjdG9yOiBTaG91bGQgYmUgYWJsZSB0byBkZWxldGUgbm9kZXMg
ZnJvbSB0aGUgRWxlbWVudHMgVHJlZS4KKyAgICAgICAgCisgICAgICAgIFdoZW4gdGhlIGRlbGV0
ZSBrZXkgaXMgcHJlc3NlZCBhbmQgYSBlbGVtZW50IGlzIHNlbGVjdGVkIGluIHRoZSB0cmVlLAor
ICAgICAgICB0aGUgZWxlbWVudCBzaG91bGQgYmUgZGVsZXRlZCBmcm9tIHRoZSBFbGVtZW50cyBU
cmVlIGFuZCB0aGUgRE9NLgorCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQmFja2VuZDo6cmVtb3ZlTm9kZSk6Cisg
ICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvSW5zcGVjdG9yQmFja2VuZC5pZGw6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckZy
b250ZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckZyb250ZW5kOjpkaWRSZW1v
dmVOb2RlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuaDoKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzUGFuZWwuanM6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuRWxlbWVudHNQYW5lbC5wcm90b3R5cGUuX3VwZGF0ZU1vZGlmaWVkTm9kZXMpOgor
ICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVudHNUcmVlT3V0bGluZS5qczoKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5FbGVtZW50c1RyZWVPdXRsaW5lLnByb3RvdHlwZS5oYW5kbGVL
ZXlFdmVudCk6CisKIDIwMDktMTAtMTMgIEJyaWFuIFdlaW5zdGVpbiAgPGJ3ZWluc3RlaW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KSW5kZXg6IFdl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCShyZXZpc2lvbiA0OTMzNSkKKysrIFdl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00
NTUsNiArNDU1LDI2IEBAIHZvaWQgSW5zcGVjdG9yQmFja2VuZDo6Y29weU5vZGUobG9uZyBub2QK
ICAgICBTdHJpbmcgbWFya3VwID0gY3JlYXRlTWFya3VwKG5vZGUpOwogICAgIFBhc3RlYm9hcmQ6
OmdlbmVyYWxQYXN0ZWJvYXJkKCktPndyaXRlUGxhaW5UZXh0KG1hcmt1cCk7CiB9CisgICAgCit2
b2lkIEluc3BlY3RvckJhY2tlbmQ6OnJlbW92ZU5vZGUobG9uZyBjYWxsSWQsIGxvbmcgbm9kZUlk
KQoreyAgICAKKyAgICBOb2RlKiBub2RlID0gbm9kZUZvcklkKG5vZGVJZCk7CisgICAgaWYgKCFu
b2RlKQorICAgICAgICByZXR1cm47CisKKyAgICBOb2RlKiBwYXJlbnROb2RlID0gbm9kZS0+cGFy
ZW50Tm9kZSgpOworICAgIGlmICghcGFyZW50Tm9kZSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
RXhjZXB0aW9uQ29kZSBjb2RlOworICAgIHBhcmVudE5vZGUtPnJlbW92ZUNoaWxkKG5vZGUsIGNv
ZGUpOworICAgIAorICAgIGlmIChjb2RlICE9IDApCisgICAgICAgIHJldHVybjsKKyAgICAKKyAg
ICBpZiAoSW5zcGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kID0gaW5zcGVjdG9yRnJvbnRlbmQoKSkK
KyAgICAgICAgZnJvbnRlbmQtPmRpZFJlbW92ZU5vZGUoY2FsbElkLCBub2RlSWQpOworfQogCiB2
b2lkIEluc3BlY3RvckJhY2tlbmQ6OmdldENvb2tpZXMobG9uZyBjYWxsSWQsIGNvbnN0IFN0cmlu
ZyYgZG9tYWluKQogewpJbmRleDogV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaAkocmV2
aXNpb24gNDkzMzUpCisrKyBXZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmgJKHdv
cmtpbmcgY29weSkKQEAgLTEzNyw2ICsxMzcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUZXh0
Tm9kZVZhbHVlKGxvbmcgY2FsbElkLCBsb25nIG5vZGVJZCwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7
CiAgICAgdm9pZCBnZXRFdmVudExpc3RlbmVyc0Zvck5vZGUobG9uZyBjYWxsSWQsIGxvbmcgbm9k
ZUlkKTsKICAgICB2b2lkIGNvcHlOb2RlKGxvbmcgbm9kZUlkKTsKKyAgICB2b2lkIHJlbW92ZU5v
ZGUobG9uZyBjYWxsSWQsIGxvbmcgbm9kZUlkKTsKIAogICAgIHZvaWQgZ2V0Q29va2llcyhsb25n
IGNhbGxJZCwgY29uc3QgU3RyaW5nJiBkb21haW4pOwogICAgIHZvaWQgZGVsZXRlQ29va2llKGNv
bnN0IFN0cmluZyYgY29va2llTmFtZSwgY29uc3QgU3RyaW5nJiBkb21haW4pOwpJbmRleDogV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwJKHJldmlzaW9uIDQ5MzM1KQorKysgV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTEw
OSw2ICsxMDksNyBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgIHZvaWQgc2V0VGV4dE5vZGVWYWx1
ZShpbiBsb25nIGNhbGxJZCwgaW4gbG9uZyBub2RlSWQsIGluIERPTVN0cmluZyB2YWx1ZSk7CiAg
ICAgICAgIHZvaWQgZ2V0RXZlbnRMaXN0ZW5lcnNGb3JOb2RlKGluIGxvbmcgY2FsbElkLCBpbiBs
b25nIG5vZGVJZCk7CiAgICAgICAgIHZvaWQgY29weU5vZGUoaW4gbG9uZyBub2RlSWQpOworICAg
ICAgICB2b2lkIHJlbW92ZU5vZGUoaW4gbG9uZyBjYWxsSWQsIGluIGxvbmcgbm9kZUlkKTsKIAog
ICAgICAgICB2b2lkIGdldENvb2tpZXMoaW4gbG9uZyBjYWxsSWQsIGluIERPTVN0cmluZyBkb21h
aW4pOwogICAgICAgICB2b2lkIGRlbGV0ZUNvb2tpZShpbiBET01TdHJpbmcgY29va2llTmFtZSwg
aW4gRE9NU3RyaW5nIGRvbWFpbik7CkluZGV4OiBXZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JG
cm9udGVuZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJv
bnRlbmQuY3BwCShyZXZpc2lvbiA0OTMzNSkKKysrIFdlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckZyb250ZW5kLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzQzLDYgKzM0MywxNCBAQCB2b2lkIElu
c3BlY3RvckZyb250ZW5kOjphdHRyaWJ1dGVzVXBkYXRlCiAgICAgZnVuY3Rpb24tPmNhbGwoKTsK
IH0KIAordm9pZCBJbnNwZWN0b3JGcm9udGVuZDo6ZGlkUmVtb3ZlTm9kZShpbnQgY2FsbElkLCBp
bnQgbm9kZUlkKQoreworICAgIE93blB0cjxTY3JpcHRGdW5jdGlvbkNhbGw+IGZ1bmN0aW9uKG5l
d0Z1bmN0aW9uQ2FsbCgiZGlkUmVtb3ZlTm9kZSIpKTsKKyAgICBmdW5jdGlvbi0+YXBwZW5kQXJn
dW1lbnQoY2FsbElkKTsKKyAgICBmdW5jdGlvbi0+YXBwZW5kQXJndW1lbnQobm9kZUlkKTsKKyAg
ICBmdW5jdGlvbi0+Y2FsbCgpOworfQorCiB2b2lkIEluc3BlY3RvckZyb250ZW5kOjpkaWRHZXRD
aGlsZE5vZGVzKGludCBjYWxsSWQpCiB7CiAgICAgT3duUHRyPFNjcmlwdEZ1bmN0aW9uQ2FsbD4g
ZnVuY3Rpb24obmV3RnVuY3Rpb25DYWxsKCJkaWRHZXRDaGlsZE5vZGVzIikpOwpJbmRleDogV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZC5oCShyZXZpc2lvbiA0OTMzNSkKKysrIFdlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kLmgJKHdvcmtpbmcgY29weSkKQEAgLTEyMCw2
ICsxMjAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgZGlkR2V0Q2hpbGRO
b2RlcyhpbnQgY2FsbElkKTsKICAgICAgICAgdm9pZCBkaWRBcHBseURvbUNoYW5nZShpbnQgY2Fs
bElkLCBib29sIHN1Y2Nlc3MpOwogICAgICAgICB2b2lkIGRpZEdldEV2ZW50TGlzdGVuZXJzRm9y
Tm9kZShpbnQgY2FsbElkLCBpbnQgbm9kZUlkLCBTY3JpcHRBcnJheSYgbGlzdGVuZXJzQXJyYXkp
OworICAgICAgICB2b2lkIGRpZFJlbW92ZU5vZGUoaW50IGNhbGxJZCwgaW50IG5vZGVJZCk7CiAK
ICAgICAgICAgdm9pZCB0aW1lbGluZVdhc0VuYWJsZWQoKTsKICAgICAgICAgdm9pZCB0aW1lbGlu
ZVdhc0Rpc2FibGVkKCk7CkluZGV4OiBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVu
dHNQYW5lbC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRWxl
bWVudHNQYW5lbC5qcwkocmV2aXNpb24gNDkzMzUpCisrKyBXZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvRWxlbWVudHNQYW5lbC5qcwkod29ya2luZyBjb3B5KQpAQCAtNDc5LDcgKzQ3OSw3IEBA
IFdlYkluc3BlY3Rvci5FbGVtZW50c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAg
ICB1cGRhdGVkUGFyZW50VHJlZUVsZW1lbnRzLnB1c2gocGFyZW50Tm9kZUl0ZW0pOwogICAgICAg
ICAgICAgfQogCi0gICAgICAgICAgICBpZiAoIXVwZGF0ZUJyZWFkY3J1bWJzICYmICh0aGlzLmZv
Y3VzZWRET01Ob2RlID09PSBwYXJlbnQgfHwgaXNBbmNlc3Rvcih0aGlzLmZvY3VzZWRET01Ob2Rl
LCBwYXJlbnQpKSkKKyAgICAgICAgICAgIGlmICghdXBkYXRlQnJlYWRjcnVtYnMgJiYgKHRoaXMu
Zm9jdXNlZERPTU5vZGUgPT09IHBhcmVudCB8fCBpc0FuY2VzdG9yTm9kZSh0aGlzLmZvY3VzZWRE
T01Ob2RlLCBwYXJlbnQpKSkKICAgICAgICAgICAgICAgICB1cGRhdGVCcmVhZGNydW1icyA9IHRy
dWU7CiAgICAgICAgIH0KIApJbmRleDogV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1l
bnRzVHJlZU91dGxpbmUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUuanMJKHJldmlzaW9uIDQ5MzM1KQorKysgV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUuanMJKHdvcmtpbmcgY29weSkK
QEAgLTE4NCw2ICsxODQsMjYgQEAgV2ViSW5zcGVjdG9yLkVsZW1lbnRzVHJlZU91dGxpbmUucHJv
dG90eQogCiAgICAgICAgIHJldHVybiBlbGVtZW50OwogICAgIH0sCisgICAgCisgICAgaGFuZGxl
S2V5RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdmFyIHNlbGVjdGVkRWxl
bWVudCA9IHRoaXMuc2VsZWN0ZWRUcmVlRWxlbWVudDsKKworICAgICAgICBpZiAoIXNlbGVjdGVk
RWxlbWVudCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgCisgICAgICAgIGlmIChldmVu
dC5rZXlDb2RlID09IDggfHwgZXZlbnQua2V5Q29kZSA9PSA0NikgeworICAgICAgICAgICAgLy8g
RGVsZXRlIG9yIGJhY2tzcGFjZSBwcmVzc2VkLCBkZWxldGUgdGhlIG5vZGUuCisgICAgICAgICAg
ICB2YXIgcGFyZW50RWxlbWVudCA9IHNlbGVjdGVkRWxlbWVudC5wYXJlbnQ7CisgICAgICAgICAg
ICBpZiAoIXBhcmVudEVsZW1lbnQpCisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
ICAgCisgICAgICAgICAgICBXZWJJbnNwZWN0b3IuRWxlbWVudHMucmVtb3ZlTm9kZShzZWxlY3Rl
ZEVsZW1lbnQsIHBhcmVudEVsZW1lbnQpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9
CisgICAgICAgIAorICAgICAgICBUcmVlT3V0bGluZS5wcm90b3R5cGUuaGFuZGxlS2V5RXZlbnQu
Y2FsbCh0aGlzLCBldmVudCk7CisgICAgfSwKIAogICAgIF9vbm1vdXNlZG93bjogZnVuY3Rpb24o
ZXZlbnQpCiAgICAgewpAQCAtODI2LDMgKzg0NiwxNyBAQCBXZWJJbnNwZWN0b3IuRWxlbWVudHNU
cmVlRWxlbWVudC5wcm90b3R5CiB9CiAKIFdlYkluc3BlY3Rvci5FbGVtZW50c1RyZWVFbGVtZW50
LnByb3RvdHlwZS5fX3Byb3RvX18gPSBUcmVlRWxlbWVudC5wcm90b3R5cGU7CisKK1dlYkluc3Bl
Y3Rvci5FbGVtZW50cyA9IHt9CisKK1dlYkluc3BlY3Rvci5FbGVtZW50cy5yZW1vdmVOb2RlID0g
ZnVuY3Rpb24odHJlZUVsZW1lbnQsIHBhcmVudEVsZW1lbnQpCit7ICAgICAKKyAgICBmdW5jdGlv
biByZW1vdmVOb2RlQ2FsbGJhY2socmVtb3ZlZE5vZGVJZCkgeworICAgICAgICBwYXJlbnRFbGVt
ZW50LnJlbW92ZUNoaWxkKHRyZWVFbGVtZW50KTsKKyAgICB9CisKKyAgICB2YXIgY2FsbElkID0g
V2ViSW5zcGVjdG9yLkNhbGxiYWNrLndyYXAocmVtb3ZlTm9kZUNhbGxiYWNrKTsKKyAgICBJbnNw
ZWN0b3JDb250cm9sbGVyLnJlbW92ZU5vZGUoY2FsbElkLCB0cmVlRWxlbWVudC5yZXByZXNlbnRl
ZE9iamVjdC5pZCk7Cit9CisKK1dlYkluc3BlY3Rvci5kaWRSZW1vdmVOb2RlID0gV2ViSW5zcGVj
dG9yLkNhbGxiYWNrLnByb2Nlc3NDYWxsYmFjazsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
Cg==
</data>
<flag name="review"
          id="22432"
          type_id="1"
          status="-"
          setter="timothy"
    />
    <flag name="commit-queue"
          id="22433"
          type_id="3"
          status="-"
          setter="bweinstein"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41116</attachid>
            <date>2009-10-13 11:45:34 -0700</date>
            <delta_ts>2009-10-13 11:55:04 -0700</delta_ts>
            <desc>Addresses Tim&apos;s comments</desc>
            <filename>elements_delete.patch</filename>
            <type>text/plain</type>
            <size>6998</size>
            <attacher name="Brian Weinstein">bweinstein</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0OTUwNCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjUgQEAKKzIwMDktMTAtMTMgIEJyaWFuIFdlaW5zdGVpbiAgPGJ3ZWluc3RlaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEZpeGVzIDxodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzAzMzc+
LgorICAgICAgICBXZWIgSW5zcGVjdG9yOiBTaG91bGQgYmUgYWJsZSB0byBkZWxldGUgbm9kZXMg
ZnJvbSB0aGUgRWxlbWVudHMgVHJlZS4KKyAgICAgICAgCisgICAgICAgIFdoZW4gdGhlIGRlbGV0
ZSBrZXkgaXMgcHJlc3NlZCBhbmQgYSBlbGVtZW50IGlzIHNlbGVjdGVkIGluIHRoZSB0cmVlLAor
ICAgICAgICB0aGUgZWxlbWVudCBzaG91bGQgYmUgZGVsZXRlZCBmcm9tIHRoZSBFbGVtZW50cyBU
cmVlIGFuZCB0aGUgRE9NLgorCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQmFja2VuZDo6cmVtb3ZlTm9kZSk6Cisg
ICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvSW5zcGVjdG9yQmFja2VuZC5pZGw6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckZy
b250ZW5kLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckZyb250ZW5kOjpkaWRSZW1v
dmVOb2RlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuaDoKKyAgICAg
ICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzUGFuZWwuanM6CisgICAgICAgIChXZWJJ
bnNwZWN0b3IuRWxlbWVudHNQYW5lbC5wcm90b3R5cGUuX3VwZGF0ZU1vZGlmaWVkTm9kZXMpOgor
ICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVudHNUcmVlT3V0bGluZS5qczoKKyAg
ICAgICAgKFdlYkluc3BlY3Rvci5FbGVtZW50c1RyZWVPdXRsaW5lLnByb3RvdHlwZS5oYW5kbGVL
ZXlFdmVudCk6CisKIDIwMDktMTAtMTMgIEJyaWFuIFdlaW5zdGVpbiAgPGJ3ZWluc3RlaW5AYXBw
bGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KSW5kZXg6IFdl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCShyZXZpc2lvbiA0OTMzNSkKKysrIFdl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00
NTUsNiArNDU1LDI2IEBAIHZvaWQgSW5zcGVjdG9yQmFja2VuZDo6Y29weU5vZGUobG9uZyBub2QK
ICAgICBTdHJpbmcgbWFya3VwID0gY3JlYXRlTWFya3VwKG5vZGUpOwogICAgIFBhc3RlYm9hcmQ6
OmdlbmVyYWxQYXN0ZWJvYXJkKCktPndyaXRlUGxhaW5UZXh0KG1hcmt1cCk7CiB9CisgICAgCit2
b2lkIEluc3BlY3RvckJhY2tlbmQ6OnJlbW92ZU5vZGUobG9uZyBjYWxsSWQsIGxvbmcgbm9kZUlk
KQoreyAgICAKKyAgICBOb2RlKiBub2RlID0gbm9kZUZvcklkKG5vZGVJZCk7CisgICAgaWYgKCFu
b2RlKQorICAgICAgICByZXR1cm47CisKKyAgICBOb2RlKiBwYXJlbnROb2RlID0gbm9kZS0+cGFy
ZW50Tm9kZSgpOworICAgIGlmICghcGFyZW50Tm9kZSkKKyAgICAgICAgcmV0dXJuOworCisgICAg
RXhjZXB0aW9uQ29kZSBjb2RlOworICAgIHBhcmVudE5vZGUtPnJlbW92ZUNoaWxkKG5vZGUsIGNv
ZGUpOworICAgIAorICAgIGlmIChjb2RlICE9IDApCisgICAgICAgIHJldHVybjsKKyAgICAKKyAg
ICBpZiAoSW5zcGVjdG9yRnJvbnRlbmQqIGZyb250ZW5kID0gaW5zcGVjdG9yRnJvbnRlbmQoKSkK
KyAgICAgICAgZnJvbnRlbmQtPmRpZFJlbW92ZU5vZGUoY2FsbElkLCBub2RlSWQpOworfQogCiB2
b2lkIEluc3BlY3RvckJhY2tlbmQ6OmdldENvb2tpZXMobG9uZyBjYWxsSWQsIGNvbnN0IFN0cmlu
ZyYgZG9tYWluKQogewpJbmRleDogV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuaAkocmV2
aXNpb24gNDkzMzUpCisrKyBXZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JCYWNrZW5kLmgJKHdv
cmtpbmcgY29weSkKQEAgLTEzNyw2ICsxMzcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRUZXh0
Tm9kZVZhbHVlKGxvbmcgY2FsbElkLCBsb25nIG5vZGVJZCwgY29uc3QgU3RyaW5nJiB2YWx1ZSk7
CiAgICAgdm9pZCBnZXRFdmVudExpc3RlbmVyc0Zvck5vZGUobG9uZyBjYWxsSWQsIGxvbmcgbm9k
ZUlkKTsKICAgICB2b2lkIGNvcHlOb2RlKGxvbmcgbm9kZUlkKTsKKyAgICB2b2lkIHJlbW92ZU5v
ZGUobG9uZyBjYWxsSWQsIGxvbmcgbm9kZUlkKTsKIAogICAgIHZvaWQgZ2V0Q29va2llcyhsb25n
IGNhbGxJZCwgY29uc3QgU3RyaW5nJiBkb21haW4pOwogICAgIHZvaWQgZGVsZXRlQ29va2llKGNv
bnN0IFN0cmluZyYgY29va2llTmFtZSwgY29uc3QgU3RyaW5nJiBkb21haW4pOwpJbmRleDogV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwJKHJldmlzaW9uIDQ5MzM1KQorKysgV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQmFja2VuZC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTEw
OSw2ICsxMDksNyBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgIHZvaWQgc2V0VGV4dE5vZGVWYWx1
ZShpbiBsb25nIGNhbGxJZCwgaW4gbG9uZyBub2RlSWQsIGluIERPTVN0cmluZyB2YWx1ZSk7CiAg
ICAgICAgIHZvaWQgZ2V0RXZlbnRMaXN0ZW5lcnNGb3JOb2RlKGluIGxvbmcgY2FsbElkLCBpbiBs
b25nIG5vZGVJZCk7CiAgICAgICAgIHZvaWQgY29weU5vZGUoaW4gbG9uZyBub2RlSWQpOworICAg
ICAgICB2b2lkIHJlbW92ZU5vZGUoaW4gbG9uZyBjYWxsSWQsIGluIGxvbmcgbm9kZUlkKTsKIAog
ICAgICAgICB2b2lkIGdldENvb2tpZXMoaW4gbG9uZyBjYWxsSWQsIGluIERPTVN0cmluZyBkb21h
aW4pOwogICAgICAgICB2b2lkIGRlbGV0ZUNvb2tpZShpbiBET01TdHJpbmcgY29va2llTmFtZSwg
aW4gRE9NU3RyaW5nIGRvbWFpbik7CkluZGV4OiBXZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JG
cm9udGVuZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJv
bnRlbmQuY3BwCShyZXZpc2lvbiA0OTMzNSkKKysrIFdlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckZyb250ZW5kLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzQzLDYgKzM0MywxNCBAQCB2b2lkIElu
c3BlY3RvckZyb250ZW5kOjphdHRyaWJ1dGVzVXBkYXRlCiAgICAgZnVuY3Rpb24tPmNhbGwoKTsK
IH0KIAordm9pZCBJbnNwZWN0b3JGcm9udGVuZDo6ZGlkUmVtb3ZlTm9kZShpbnQgY2FsbElkLCBp
bnQgbm9kZUlkKQoreworICAgIE93blB0cjxTY3JpcHRGdW5jdGlvbkNhbGw+IGZ1bmN0aW9uKG5l
d0Z1bmN0aW9uQ2FsbCgiZGlkUmVtb3ZlTm9kZSIpKTsKKyAgICBmdW5jdGlvbi0+YXBwZW5kQXJn
dW1lbnQoY2FsbElkKTsKKyAgICBmdW5jdGlvbi0+YXBwZW5kQXJndW1lbnQobm9kZUlkKTsKKyAg
ICBmdW5jdGlvbi0+Y2FsbCgpOworfQorCiB2b2lkIEluc3BlY3RvckZyb250ZW5kOjpkaWRHZXRD
aGlsZE5vZGVzKGludCBjYWxsSWQpCiB7CiAgICAgT3duUHRyPFNjcmlwdEZ1bmN0aW9uQ2FsbD4g
ZnVuY3Rpb24obmV3RnVuY3Rpb25DYWxsKCJkaWRHZXRDaGlsZE5vZGVzIikpOwpJbmRleDogV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRnJvbnRlbmQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JGcm9udGVuZC5oCShyZXZpc2lvbiA0OTMzNSkKKysrIFdlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckZyb250ZW5kLmgJKHdvcmtpbmcgY29weSkKQEAgLTEyMCw2
ICsxMjAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHZvaWQgZGlkR2V0Q2hpbGRO
b2RlcyhpbnQgY2FsbElkKTsKICAgICAgICAgdm9pZCBkaWRBcHBseURvbUNoYW5nZShpbnQgY2Fs
bElkLCBib29sIHN1Y2Nlc3MpOwogICAgICAgICB2b2lkIGRpZEdldEV2ZW50TGlzdGVuZXJzRm9y
Tm9kZShpbnQgY2FsbElkLCBpbnQgbm9kZUlkLCBTY3JpcHRBcnJheSYgbGlzdGVuZXJzQXJyYXkp
OworICAgICAgICB2b2lkIGRpZFJlbW92ZU5vZGUoaW50IGNhbGxJZCwgaW50IG5vZGVJZCk7CiAK
ICAgICAgICAgdm9pZCB0aW1lbGluZVdhc0VuYWJsZWQoKTsKICAgICAgICAgdm9pZCB0aW1lbGlu
ZVdhc0Rpc2FibGVkKCk7CkluZGV4OiBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRWxlbWVu
dHNQYW5lbC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvRWxl
bWVudHNQYW5lbC5qcwkocmV2aXNpb24gNDkzMzUpCisrKyBXZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvRWxlbWVudHNQYW5lbC5qcwkod29ya2luZyBjb3B5KQpAQCAtNDc5LDcgKzQ3OSw3IEBA
IFdlYkluc3BlY3Rvci5FbGVtZW50c1BhbmVsLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgICAg
ICB1cGRhdGVkUGFyZW50VHJlZUVsZW1lbnRzLnB1c2gocGFyZW50Tm9kZUl0ZW0pOwogICAgICAg
ICAgICAgfQogCi0gICAgICAgICAgICBpZiAoIXVwZGF0ZUJyZWFkY3J1bWJzICYmICh0aGlzLmZv
Y3VzZWRET01Ob2RlID09PSBwYXJlbnQgfHwgaXNBbmNlc3Rvcih0aGlzLmZvY3VzZWRET01Ob2Rl
LCBwYXJlbnQpKSkKKyAgICAgICAgICAgIGlmICghdXBkYXRlQnJlYWRjcnVtYnMgJiYgKHRoaXMu
Zm9jdXNlZERPTU5vZGUgPT09IHBhcmVudCB8fCBpc0FuY2VzdG9yTm9kZSh0aGlzLmZvY3VzZWRE
T01Ob2RlLCBwYXJlbnQpKSkKICAgICAgICAgICAgICAgICB1cGRhdGVCcmVhZGNydW1icyA9IHRy
dWU7CiAgICAgICAgIH0KIApJbmRleDogV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1l
bnRzVHJlZU91dGxpbmUuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUuanMJKHJldmlzaW9uIDQ5MzM1KQorKysgV2ViQ29yZS9p
bnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUuanMJKHdvcmtpbmcgY29weSkK
QEAgLTE4NCw2ICsxODQsMjIgQEAgV2ViSW5zcGVjdG9yLkVsZW1lbnRzVHJlZU91dGxpbmUucHJv
dG90eQogCiAgICAgICAgIHJldHVybiBlbGVtZW50OwogICAgIH0sCisgICAgCisgICAgaGFuZGxl
S2V5RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdmFyIHNlbGVjdGVkRWxl
bWVudCA9IHRoaXMuc2VsZWN0ZWRUcmVlRWxlbWVudDsKKworICAgICAgICBpZiAoIXNlbGVjdGVk
RWxlbWVudCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgCisgICAgICAgIGlmIChldmVu
dC5rZXlDb2RlID09IDggfHwgZXZlbnQua2V5Q29kZSA9PSA0NikgeworICAgICAgICAgICAgLy8g
RGVsZXRlIG9yIGJhY2tzcGFjZSBwcmVzc2VkLCBkZWxldGUgdGhlIG5vZGUuCisgICAgICAgICAg
ICBzZWxlY3RlZEVsZW1lbnQucmVtb3ZlKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAg
IH0KKyAgICAgICAgCisgICAgICAgIFRyZWVPdXRsaW5lLnByb3RvdHlwZS5oYW5kbGVLZXlFdmVu
dC5jYWxsKHRoaXMsIGV2ZW50KTsKKyAgICB9LAogCiAgICAgX29ubW91c2Vkb3duOiBmdW5jdGlv
bihldmVudCkKICAgICB7CkBAIC04MjIsNyArODM4LDI0IEBAIFdlYkluc3BlY3Rvci5FbGVtZW50
c1RyZWVFbGVtZW50LnByb3RvdHkKICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAg
ICAgfQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfSwKKyAgICAKKyAgICByZW1vdmU6IGZ1
bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHZhciBzZWxmID0gdGhpczsKKyAgICAgICAgdmFyIHBh
cmVudEVsZW1lbnQgPSB0aGlzLnBhcmVudDsKKyAgICAgICAgaWYgKCFwYXJlbnRFbGVtZW50KQor
ICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGZ1bmN0aW9uIHJlbW92ZU5vZGVDYWxsYmFj
ayhyZW1vdmVkTm9kZUlkKSB7CisgICAgICAgICAgICBwYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxk
KHNlbGYpOworICAgICAgICB9CisKKyAgICAgICAgdmFyIGNhbGxJZCA9IFdlYkluc3BlY3Rvci5D
YWxsYmFjay53cmFwKHJlbW92ZU5vZGVDYWxsYmFjayk7CisgICAgICAgIEluc3BlY3RvckNvbnRy
b2xsZXIucmVtb3ZlTm9kZShjYWxsSWQsIHRoaXMucmVwcmVzZW50ZWRPYmplY3QuaWQpOwogICAg
IH0KIH0KIAogV2ViSW5zcGVjdG9yLkVsZW1lbnRzVHJlZUVsZW1lbnQucHJvdG90eXBlLl9fcHJv
dG9fXyA9IFRyZWVFbGVtZW50LnByb3RvdHlwZTsKKworV2ViSW5zcGVjdG9yLmRpZFJlbW92ZU5v
ZGUgPSBXZWJJbnNwZWN0b3IuQ2FsbGJhY2sucHJvY2Vzc0NhbGxiYWNrOwo=
</data>
<flag name="review"
          id="22436"
          type_id="1"
          status="+"
          setter="timothy"
    />
    <flag name="commit-queue"
          id="22437"
          type_id="3"
          status="-"
          setter="bweinstein"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41118</attachid>
            <date>2009-10-13 12:55:57 -0700</date>
            <delta_ts>2009-10-13 13:01:54 -0700</delta_ts>
            <desc>Fixes Leak</desc>
            <filename>leak_fix.patch</filename>
            <type>text/plain</type>
            <size>2604</size>
            <attacher name="Brian Weinstein">bweinstein</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0OTUwNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMTAtMTMgIEJyaWFuIFdlaW5zdGVpbiAgPGJ3ZWluc3RlaW5A
YXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEZpeCBhIGxlYWsgaW4gdGhlIGluc3BlY3RvciBieSBjYWxsaW5nIGRpZFJlbW92ZU5vZGUg
d2l0aAorICAgICAgICBhbiBlcnJvciBjb2RlIHdoZW4gaXQgZmFpbHMsIGluc3RlYWQgb2YgcmV0
dXJuaW5nIGZyb20gdGhlCisgICAgICAgIEJhY2tlbmQuCisKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQmFja2VuZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JCYWNrZW5k
OjpyZW1vdmVOb2RlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzVHJl
ZU91dGxpbmUuanM6CisKIDIwMDktMTAtMTMgIEJyaWFuIFdlaW5zdGVpbiAgPGJ3ZWluc3RlaW5A
YXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRpbW90aHkgSGF0Y2hlci4KSW5kZXg6
IFdlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCShyZXZpc2lvbiA0OTUwNSkKKysr
IFdlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckJhY2tlbmQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC00NTcsMjMgKzQ1NywzMiBAQCB2b2lkIEluc3BlY3RvckJhY2tlbmQ6OmNvcHlOb2RlKGxvbmcg
bm9kCiB9CiAgICAgCiB2b2lkIEluc3BlY3RvckJhY2tlbmQ6OnJlbW92ZU5vZGUobG9uZyBjYWxs
SWQsIGxvbmcgbm9kZUlkKQoteyAgICAKK3sKKyAgICBJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRl
bmQgPSBpbnNwZWN0b3JGcm9udGVuZCgpOworICAgIGlmICghZnJvbnRlbmQpCisgICAgICAgIHJl
dHVybjsKKwogICAgIE5vZGUqIG5vZGUgPSBub2RlRm9ySWQobm9kZUlkKTsKLSAgICBpZiAoIW5v
ZGUpCisgICAgaWYgKCFub2RlKSB7CisgICAgICAgIC8vIFVzZSAtMSB0byBkZW5vdGUgYW4gZXJy
b3IgY29uZGl0aW9uLgorICAgICAgICBmcm9udGVuZC0+ZGlkUmVtb3ZlTm9kZShjYWxsSWQsIC0x
KTsKICAgICAgICAgcmV0dXJuOworICAgIH0KIAogICAgIE5vZGUqIHBhcmVudE5vZGUgPSBub2Rl
LT5wYXJlbnROb2RlKCk7Ci0gICAgaWYgKCFwYXJlbnROb2RlKQorICAgIGlmICghcGFyZW50Tm9k
ZSkgeworICAgICAgICBmcm9udGVuZC0+ZGlkUmVtb3ZlTm9kZShjYWxsSWQsIC0xKTsKICAgICAg
ICAgcmV0dXJuOworICAgIH0KIAogICAgIEV4Y2VwdGlvbkNvZGUgY29kZTsKICAgICBwYXJlbnRO
b2RlLT5yZW1vdmVDaGlsZChub2RlLCBjb2RlKTsKLSAgICAKLSAgICBpZiAoY29kZSkKKyAgICBp
ZiAoY29kZSkgeworICAgICAgICBmcm9udGVuZC0+ZGlkUmVtb3ZlTm9kZShjYWxsSWQsIC0xKTsK
ICAgICAgICAgcmV0dXJuOwotICAgIAotICAgIGlmIChJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRl
bmQgPSBpbnNwZWN0b3JGcm9udGVuZCgpKQotICAgICAgICBmcm9udGVuZC0+ZGlkUmVtb3ZlTm9k
ZShjYWxsSWQsIG5vZGVJZCk7CisgICAgfQorCisgICAgZnJvbnRlbmQtPmRpZFJlbW92ZU5vZGUo
Y2FsbElkLCBub2RlSWQpOwogfQogCiB2b2lkIEluc3BlY3RvckJhY2tlbmQ6OmdldENvb2tpZXMo
bG9uZyBjYWxsSWQsIGNvbnN0IFN0cmluZyYgZG9tYWluKQpJbmRleDogV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUuanMJKHJldmlzaW9uIDQ5
NTA1KQorKysgV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0VsZW1lbnRzVHJlZU91dGxpbmUu
anMJKHdvcmtpbmcgY29weSkKQEAgLTg1NCw2ICs4NTQsMTEgQEAgV2ViSW5zcGVjdG9yLkVsZW1l
bnRzVHJlZUVsZW1lbnQucHJvdG90eQogICAgICAgICB2YXIgc2VsZiA9IHRoaXM7CiAgICAgICAg
IGZ1bmN0aW9uIHJlbW92ZU5vZGVDYWxsYmFjayhyZW1vdmVkTm9kZUlkKQogICAgICAgICB7Cisg
ICAgICAgICAgICAvLyAtMSBpcyBhbiBlcnJvciBjb2RlLCB3aGljaCBtZWFucyByZW1vdmluZyB0
aGUgbm9kZSBmcm9tIHRoZSBET00gZmFpbGVkLAorICAgICAgICAgICAgLy8gc28gd2Ugc2hvdWxk
bid0IHJlbW92ZSBpdCBmcm9tIHRoZSB0cmVlLgorICAgICAgICAgICAgaWYgKHJlbW92ZWROb2Rl
SWQgPT0gLTEpCisgICAgICAgICAgICAgICAgcmV0dXJuOworCiAgICAgICAgICAgICBwYXJlbnRF
bGVtZW50LnJlbW92ZUNoaWxkKHNlbGYpOwogICAgICAgICB9CiAK
</data>
<flag name="review"
          id="22440"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
    <flag name="commit-queue"
          id="22441"
          type_id="3"
          status="-"
          setter="bweinstein"
    />
          </attachment>
      

    </bug>

</bugzilla>