<?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>57829</bug_id>
          
          <creation_ts>2011-04-05 05:08:03 -0700</creation_ts>
          <short_desc>Web Inspector: Range insertNode function does not update content in the inspector</short_desc>
          <delta_ts>2011-04-06 03:01:30 -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="Alexander Pavlov (apavlov)">apavlov</reporter>
          <assigned_to name="Alexander Pavlov (apavlov)">apavlov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>379455</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-04-05 05:08:03 -0700</bug_when>
    <thetext>What steps will reproduce the problem?

At a web page like &quot;http://news.ycombinator.com/item?id=1968304&quot; I modified a &lt;p&gt; element, and added the attribute id=&apos;p12345&apos;
i then typed in the following code into the console:

range = document.createRange();
referenceNode = document.getElementById(&apos;p12345&apos;).firstChild;
range.selectNode(referenceNode);
range.setStart(referenceNode, 89 );
range.setEnd(referenceNode, 89 + 5 );
range.deleteContents();
span = range.startContainer.ownerDocument.createElement(&apos;span&apos;);
span.innerHTML = &apos;test&apos;;
range.insertNode(span);

after running the above code, the html view updates, but the inspector does not.  it truncates after the insertion point.

What is the expected result?
the html in the inspector should properly update.

What happens instead?
after running the above code, the html view updates, but the inspector does not.  it truncates after the insertion point.

Upstreaming http://code.google.com/p/chromium/issues/detail?id=65424 with the code snippet fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379543</commentid>
    <comment_count>1</comment_count>
      <attachid>88227</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-04-05 07:38:29 -0700</bug_when>
    <thetext>Created attachment 88227
[PATCH] Suggested fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379560</commentid>
    <comment_count>2</comment_count>
      <attachid>88234</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-04-05 07:52:49 -0700</bug_when>
    <thetext>Created attachment 88234
[PATCH] Added a test case to an existing test instead of a new one</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379634</commentid>
    <comment_count>3</comment_count>
      <attachid>88252</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-04-05 09:27:05 -0700</bug_when>
    <thetext>Created attachment 88252
[PATCH] Simplified patch, as suggested by pfeldman</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379690</commentid>
    <comment_count>4</comment_count>
      <attachid>88252</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2011-04-05 10:02:03 -0700</bug_when>
    <thetext>Comment on attachment 88252
[PATCH] Simplified patch, as suggested by pfeldman

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

&gt; Source/WebCore/inspector/InspectorDOMAgent.cpp:1100
&gt; +    m_childrenRequested.add(bind(container, nodesMap));

Please remove all the other calls to m_childredRequested.add</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379705</commentid>
    <comment_count>5</comment_count>
      <attachid>88267</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-04-05 10:19:48 -0700</bug_when>
    <thetext>Created attachment 88267
[PATCH] Comment addressed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>380208</commentid>
    <comment_count>6</comment_count>
      <attachid>88267</attachid>
    <who name="Yury Semikhatsky">yurys</who>
    <bug_when>2011-04-06 01:36:28 -0700</bug_when>
    <thetext>Comment on attachment 88267
[PATCH] Comment addressed

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

&gt; Source/WebCore/inspector/InspectorDOMAgent.cpp:1094
&gt; +            return buildArrayForContainerChildren(container, 1, nodesMap);

Can you rewrite this if block to avoid the recursive call here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>380247</commentid>
    <comment_count>7</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-04-06 03:01:30 -0700</bug_when>
    <thetext>Committed r83037: &lt;http://trac.webkit.org/changeset/83037&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88227</attachid>
            <date>2011-04-05 07:38:29 -0700</date>
            <delta_ts>2011-04-05 07:52:49 -0700</delta_ts>
            <desc>[PATCH] Suggested fix</desc>
            <filename>insertnode.patch</filename>
            <type>text/plain</type>
            <size>8266</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IGUxNDFhNjdhNTMwYjRjYjU1YmJjZTI5YTJhNmVjYzcyZjE4NDZiNGUKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUdWUgQXByIDUg
MTc6NDI6MTIgMjAxMSArMDQwMAoKICAgIEZpeAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZmZkNTRjLi4wNWE2MzExIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMDUgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2
bG92QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXZWIgSW5zcGVjdG9yOiBSYW5nZSBpbnNlcnROb2RlIGZ1bmN0aW9uIGRvZXMg
bm90IHVwZGF0ZSBjb250ZW50IGluIHRoZSBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3ODI5CisKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLXJhbmdlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0YS1yYW5nZS5odG1sOiBBZGRl
ZC4KKwogMjAxMS0wNC0wNSAgUGF2ZWwgUG9kaXZpbG92ICA8cG9kaXZpbG92QGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBVbnJldmlld2VkLCByZXZlcnQgYmFkIHJlYmFzZWxpbmUgb2YgZW5nbGlz
aC1sci10ZXh0LWV4cGVjdGVkLmh0bWwgaW4gcjgyOTE4LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0YS1yYW5nZS1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLXJhbmdlLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi5jMjYzZGUyCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1j
aGFyZGF0YS1yYW5nZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxNiBAQAorVGVzdHMgdGhhdCBl
bGVtZW50cyBwYW5lbCBjb3JyZWN0bHkgdXBkYXRlcyB0ZXh0dWFsIG5vZGUgY29udGVudHMgbWFu
aXB1bGF0ZWQgdGhyb3VnaCBSYW5nZS4gQnVnIDU3ODI5LgorCitMb3JlbSBpcHN0ZXN0bG9yIHNp
dCBhbWV0LgorCitSdW5uaW5nOiB0ZXN0RHVtcEluaXRpYWwKKz09PT09PT09PSBPcmlnaW5hbCA9
PT09PT09PQorICA8ZGl2IGlkPSJub2RlIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldC48L2Rp
dj4KKworUnVubmluZzogdGVzdEVkaXRDb250ZW50cworPT09PT0gTW9kaWZpZWQgdGV4dCBjb250
ZW50cyA9PT09PQorLSA8ZGl2IGlkPSJub2RlIj4KKyAgICAgICJMb3JlbSBpcHMiCisgICAgICA8
c3Bhbj50ZXN0PC9zcGFuPgorICAgICAgImxvciBzaXQgYW1ldC4iCisgIDwvZGl2PgorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLXJh
bmdlLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRh
LXJhbmdlLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNjRhMGEyNAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9tb2RpZnkt
Y2hhcmRhdGEtcmFuZ2UuaHRtbApAQCAtMCwwICsxLDY1IEBACis8aHRtbD4KKzxoZWFkPgorPHNj
cmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48
L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9lbGVtZW50
cy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+CisKK2Z1bmN0aW9uIG1vZGlmeVRleHQoKQor
eworICAgIHZhciByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CisgICAgdmFyIHJlZmVy
ZW5jZU5vZGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm9kZSIpLmZpcnN0Q2hpbGQ7Cisg
ICAgcmFuZ2Uuc2VsZWN0Tm9kZShyZWZlcmVuY2VOb2RlKTsKKyAgICByYW5nZS5zZXRTdGFydChy
ZWZlcmVuY2VOb2RlLCA5KTsKKyAgICByYW5nZS5zZXRFbmQocmVmZXJlbmNlTm9kZSwgOSArIDUp
OworICAgIHJhbmdlLmRlbGV0ZUNvbnRlbnRzKCk7CisgICAgdmFyIHNwYW4gPSByYW5nZS5zdGFy
dENvbnRhaW5lci5vd25lckRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTsKKyAgICBzcGFu
LmlubmVySFRNTCA9ICJ0ZXN0IjsKKyAgICByYW5nZS5pbnNlcnROb2RlKHNwYW4pOworfQorCitm
dW5jdGlvbiB0ZXN0KCkKK3sKKyAgICB2YXIgdGFyZ2V0Tm9kZTsKKworICAgIEluc3BlY3RvclRl
c3QucnVuVGVzdFN1aXRlKFsKKyAgICAgICAgZnVuY3Rpb24gdGVzdER1bXBJbml0aWFsKG5leHQp
CisgICAgICAgIHsKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNhbGxiYWNrKG5vZGUpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgdGFyZ2V0Tm9kZSA9IG5vZGU7CisgICAgICAgICAgICAg
ICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIj09PT09PT09PSBPcmlnaW5hbCA9PT09PT09PSIp
OworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZHVtcEVsZW1lbnRzVHJlZSh0YXJnZXRO
b2RlKTsKKyAgICAgICAgICAgICAgICBuZXh0KCk7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICBJbnNwZWN0b3JUZXN0LnNlbGVjdE5vZGVXaXRoSWQoIm5vZGUiLCBjYWxsYmFjayk7CisgICAg
ICAgIH0sCisKKyAgICAgICAgZnVuY3Rpb24gdGVzdEVkaXRDb250ZW50cyhuZXh0KQorICAgICAg
ICB7CisgICAgICAgICAgICBmdW5jdGlvbiBjYWxsYmFjaygpCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRSZXN1bHQoIj09PT09IE1vZGlmaWVkIHRleHQg
Y29udGVudHMgPT09PT0iKTsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmR1bXBFbGVt
ZW50c1RyZWUodGFyZ2V0Tm9kZSk7CisgICAgICAgICAgICAgICAgbmV4dCgpOworICAgICAgICAg
ICAgfQorICAgICAgICAgICAgZnVuY3Rpb24gZXhwYW5kQ2FsbGJhY2soKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXhwYW5kRWxlbWVudHNUcmVlKGNhbGxi
YWNrKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJ
blBhZ2UoIm1vZGlmeVRleHQoKSIsIGV4cGFuZENhbGxiYWNrKTsKKyAgICAgICAgfQorICAgIF0p
OworfQorCis8L3NjcmlwdD4KKzwvaGVhZD4KKworPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgor
PHA+CitUZXN0cyB0aGF0IGVsZW1lbnRzIHBhbmVsIGNvcnJlY3RseSB1cGRhdGVzIHRleHR1YWwg
bm9kZSBjb250ZW50cyBtYW5pcHVsYXRlZCB0aHJvdWdoIFJhbmdlLiBCdWcgPGEgaHJlZj0iaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3ODI5Ij41NzgyOTwvYT4uCis8
L3A+CisKKzxkaXYgaWQ9Im5vZGUiPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LjwvZGl2Pgor
Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDNiZTA4OS4uNzg5MDFiMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDExLTA0LTA1ICBBbGV4YW5kZXIgUGF2bG92ICA8YXBh
dmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogUmFuZ2UgaW5zZXJ0Tm9kZSBmdW5jdGlvbiBkb2Vz
IG5vdCB1cGRhdGUgY29udGVudCBpbiB0aGUgaW5zcGVjdG9yCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzgyOQorCisgICAgICAgIFRlc3Q6IGluc3Bl
Y3Rvci9lbGVtZW50cy9tb2RpZnktY2hhcmRhdGEtcmFuZ2UuaHRtbAorCisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckRPTUFnZW50OjpnZXREb2N1bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01B
Z2VudDo6cHVzaENoaWxkTm9kZXNUb0Zyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckRPTUFnZW50OjpidWlsZEFycmF5Rm9yQ29udGFpbmVyQ2hpbGRyZW4pOgorICAgICAgICAq
IGluc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yRE9NQWdlbnQ6OkF1eGlsaWFyeUNoaWxkcmVuUmVxdWVzdGVkU2NvcGU6OkF1eGlsaWFyeUNo
aWxkcmVuUmVxdWVzdGVkU2NvcGUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdl
bnQ6OkF1eGlsaWFyeUNoaWxkcmVuUmVxdWVzdGVkU2NvcGU6On5BdXhpbGlhcnlDaGlsZHJlblJl
cXVlc3RlZFNjb3BlKToKKwogMjAxMS0wNC0wNSAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFw
cGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwCmluZGV4IDU0ODNjZDguLjJi
NjQ1NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01B
Z2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50
LmNwcApAQCAtNDQyLDggKzQ0MiwxMCBAQCB2b2lkIEluc3BlY3RvckRPTUFnZW50OjpnZXREb2N1
bWVudChFcnJvclN0cmluZyosIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+KiByb290KQogICAgIHJl
c2V0KCk7CiAgICAgbV9kb2N1bWVudCA9IGRvYzsKIAotICAgIGlmICghbV9kb2N1bWVudE5vZGVU
b0lkTWFwLmNvbnRhaW5zKG1fZG9jdW1lbnQpKQorICAgIGlmICghbV9kb2N1bWVudE5vZGVUb0lk
TWFwLmNvbnRhaW5zKG1fZG9jdW1lbnQpKSB7CisgICAgICAgIEF1eGlsaWFyeUNoaWxkcmVuUmVx
dWVzdGVkU2NvcGUgc2NvcGUodGhpcyk7CiAgICAgICAgICpyb290ID0gYnVpbGRPYmplY3RGb3JO
b2RlKG1fZG9jdW1lbnQuZ2V0KCksIDIsICZtX2RvY3VtZW50Tm9kZVRvSWRNYXApOworICAgIH0K
IH0KIAogdm9pZCBJbnNwZWN0b3JET01BZ2VudDo6cHVzaENoaWxkTm9kZXNUb0Zyb250ZW5kKGlu
dCBub2RlSWQpCkBAIC00NTUsNiArNDU3LDcgQEAgdm9pZCBJbnNwZWN0b3JET01BZ2VudDo6cHVz
aENoaWxkTm9kZXNUb0Zyb250ZW5kKGludCBub2RlSWQpCiAgICAgICAgIHJldHVybjsKIAogICAg
IE5vZGVUb0lkTWFwKiBub2RlTWFwID0gbV9pZFRvTm9kZXNNYXAuZ2V0KG5vZGVJZCk7CisgICAg
QXV4aWxpYXJ5Q2hpbGRyZW5SZXF1ZXN0ZWRTY29wZSBzY29wZSh0aGlzKTsKICAgICBSZWZQdHI8
SW5zcGVjdG9yQXJyYXk+IGNoaWxkcmVuID0gYnVpbGRBcnJheUZvckNvbnRhaW5lckNoaWxkcmVu
KG5vZGUsIDEsIG5vZGVNYXApOwogICAgIG1fY2hpbGRyZW5SZXF1ZXN0ZWQuYWRkKG5vZGVJZCk7
CiAgICAgbV9mcm9udGVuZC0+c2V0Q2hpbGROb2Rlcyhub2RlSWQsIGNoaWxkcmVuLnJlbGVhc2Uo
KSk7CkBAIC0xMDkxLDggKzEwOTQsMTEgQEAgUGFzc1JlZlB0cjxJbnNwZWN0b3JBcnJheT4gSW5z
cGVjdG9yRE9NQWdlbnQ6OmJ1aWxkQXJyYXlGb3JDb250YWluZXJDaGlsZHJlbihOb2QKIAogICAg
IGlmIChkZXB0aCA9PSAwKSB7CiAgICAgICAgIC8vIFNwZWNpYWwgY2FzZSB0aGVfb25seSB0ZXh0
IGNoaWxkLgotICAgICAgICBpZiAoY2hpbGQgJiYgY2hpbGQtPm5vZGVUeXBlKCkgPT0gTm9kZTo6
VEVYVF9OT0RFICYmICFpbm5lck5leHRTaWJsaW5nKGNoaWxkKSkKKyAgICAgICAgaWYgKGNoaWxk
ICYmIGNoaWxkLT5ub2RlVHlwZSgpID09IE5vZGU6OlRFWFRfTk9ERSAmJiAhaW5uZXJOZXh0U2li
bGluZyhjaGlsZCkpIHsKKyAgICAgICAgICAgIGlmIChtX2N1cnJlbnRDaGlsZHJlblJlcXVlc3Rl
ZCkKKyAgICAgICAgICAgICAgICBtX2N1cnJlbnRDaGlsZHJlblJlcXVlc3RlZC0+YXBwZW5kKGJp
bmQoY29udGFpbmVyLCBub2Rlc01hcCkpOwogICAgICAgICAgICAgY2hpbGRyZW4tPnB1c2hPYmpl
Y3QoYnVpbGRPYmplY3RGb3JOb2RlKGNoaWxkLCAwLCBub2Rlc01hcCkpOworICAgICAgICB9CiAg
ICAgICAgIHJldHVybiBjaGlsZHJlbi5yZWxlYXNlKCk7CiAgICAgfSBlbHNlIGlmIChkZXB0aCA+
IDApIHsKICAgICAgICAgZGVwdGgtLTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JET01BZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckRPTUFnZW50LmgKaW5kZXggMDBmM2U2Yy4uMWNlZjM1OSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmgKQEAgLTE3NCw2ICsxNzQsMjcgQEAgcHVi
bGljOgogICAgIHN0YXRpYyBib29sIGlzV2hpdGVzcGFjZShOb2RlKik7CiAKIHByaXZhdGU6Cisg
ICAgY2xhc3MgQXV4aWxpYXJ5Q2hpbGRyZW5SZXF1ZXN0ZWRTY29wZSB7CisgICAgICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOworICAgIHB1YmxpYzoKKyAgICAgICAgQXV4aWxpYXJ5Q2hpbGRy
ZW5SZXF1ZXN0ZWRTY29wZShJbnNwZWN0b3JET01BZ2VudCogZG9tQWdlbnQpIDogbV9kb21BZ2Vu
dChkb21BZ2VudCkKKyAgICAgICAgeworICAgICAgICAgICAgbV9kb21BZ2VudC0+bV9jdXJyZW50
Q2hpbGRyZW5SZXF1ZXN0ZWQgPSBhZG9wdFB0cihuZXcgVmVjdG9yPGludD4oKSk7CisgICAgICAg
IH0KKworICAgICAgICB+QXV4aWxpYXJ5Q2hpbGRyZW5SZXF1ZXN0ZWRTY29wZSgpCisgICAgICAg
IHsKKyAgICAgICAgICAgIFZlY3RvcjxpbnQ+KiBjdXJyZW50Q2hpbGRyZW5SZXF1ZXN0ZWQgPSBt
X2RvbUFnZW50LT5tX2N1cnJlbnRDaGlsZHJlblJlcXVlc3RlZC5nZXQoKTsKKyAgICAgICAgICAg
IEFTU0VSVChjdXJyZW50Q2hpbGRyZW5SZXF1ZXN0ZWQpOworICAgICAgICAgICAgZm9yIChpbnQg
aSA9IDAsIHNpemUgPSBjdXJyZW50Q2hpbGRyZW5SZXF1ZXN0ZWQtPnNpemUoKTsgaSA8IHNpemU7
ICsraSkKKyAgICAgICAgICAgICAgICBtX2RvbUFnZW50LT5tX2NoaWxkcmVuUmVxdWVzdGVkLmFk
ZChjdXJyZW50Q2hpbGRyZW5SZXF1ZXN0ZWQtPmF0KGkpKTsKKyAgICAgICAgICAgIG1fZG9tQWdl
bnQtPm1fY3VycmVudENoaWxkcmVuUmVxdWVzdGVkLmNsZWFyKCk7CisgICAgICAgIH0KKworICAg
IHByaXZhdGU6CisgICAgICAgIEluc3BlY3RvckRPTUFnZW50KiBtX2RvbUFnZW50OworICAgIH07
CisKICAgICBJbnNwZWN0b3JET01BZ2VudChJbnN0cnVtZW50aW5nQWdlbnRzKiwgUGFnZSosIElu
c3BlY3RvckNsaWVudCosIEluc3BlY3RvclN0YXRlKiwgSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKik7
CiAKICAgICB2b2lkIHNldFNlYXJjaGluZ0Zvck5vZGUoYm9vbCBlbmFibGVkKTsKQEAgLTIyMCw2
ICsyNDEsNyBAQCBwcml2YXRlOgogICAgIEhhc2hNYXA8aW50LCBOb2RlKj4gbV9pZFRvTm9kZTsK
ICAgICBIYXNoTWFwPGludCwgTm9kZVRvSWRNYXAqPiBtX2lkVG9Ob2Rlc01hcDsKICAgICBIYXNo
U2V0PGludD4gbV9jaGlsZHJlblJlcXVlc3RlZDsKKyAgICBPd25QdHI8VmVjdG9yPGludD4gPiBt
X2N1cnJlbnRDaGlsZHJlblJlcXVlc3RlZDsKICAgICBpbnQgbV9sYXN0Tm9kZUlkOwogICAgIFJl
ZlB0cjxEb2N1bWVudD4gbV9kb2N1bWVudDsKICAgICBEZXF1ZTxNYXRjaEpvYio+IG1fcGVuZGlu
Z01hdGNoSm9iczsKQEAgLTIyOSw2ICsyNTEsOCBAQCBwcml2YXRlOgogICAgIFJlZlB0cjxOb2Rl
PiBtX2hpZ2hsaWdodGVkTm9kZTsKICAgICBSZWZQdHI8Tm9kZT4gbV9ub2RlVG9Gb2N1czsKICAg
ICBib29sIG1fc2VhcmNoaW5nRm9yTm9kZTsKKworICAgIGZyaWVuZCBjbGFzcyBBdXhpbGlhcnlD
aGlsZHJlblJlcXVlc3RlZFNjb3BlOwogfTsKIAogI2VuZGlmIC8vIEVOQUJMRShJTlNQRUNUT1Ip
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88234</attachid>
            <date>2011-04-05 07:52:49 -0700</date>
            <delta_ts>2011-04-05 09:27:05 -0700</delta_ts>
            <desc>[PATCH] Added a test case to an existing test instead of a new one</desc>
            <filename>insertnode.patch</filename>
            <type>text/plain</type>
            <size>8714</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IDRkODZjOGI0NzliYzdjZWI3ZGRmMjIwYjhhZWYwODk1MTBlNjlkYTMKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUdWUgQXByIDUg
MTc6NDI6MTIgMjAxMSArMDQwMAoKICAgIEZpeAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZmZkNTRjLi5iZmJlOTRkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMDUgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2
bG92QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXZWIgSW5zcGVjdG9yOiBSYW5nZSBpbnNlcnROb2RlIGZ1bmN0aW9uIGRvZXMg
bm90IHVwZGF0ZSBjb250ZW50IGluIHRoZSBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3ODI5CisKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWw6CisKIDIwMTEtMDQtMDUgIFBhdmVsIFBv
ZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwg
cmV2ZXJ0IGJhZCByZWJhc2VsaW5lIG9mIGVuZ2xpc2gtbHItdGV4dC1leHBlY3RlZC5odG1sIGlu
IHI4MjkxOC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9tb2Rp
ZnktY2hhcmRhdGEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRz
L21vZGlmeS1jaGFyZGF0YS1leHBlY3RlZC50eHQKaW5kZXggNDM1MjI1YS4uN2FlZDQ2OSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0YS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1j
aGFyZGF0YS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMjMgQEAKIFRlc3RzIHRoYXQgZWxlbWVu
dHMgcGFuZWwgdXBkYXRlcyBkb20gdHJlZSBzdHJ1Y3R1cmUgdXBvbiBjaGFuZ2VzIHRvIGNoYXJh
Y3RlcnMuCiAKIEJhcgorTG9yZW0gaXBzdGVzdGxvciBzaXQgYW1ldAogCiBSdW5uaW5nOiB0ZXN0
RHVtcEluaXRpYWwKLT09PT09PT09PSBPcmlnaW5hbCA9PT09PT09PQorPT09PT09PT09IE9yaWdp
bmFsIGZvciBub3JtYWwgbXV0YXRpb24gPT09PT09PT0KICAgPGRpdiBpZD0ibm9kZSI+Rm9vPC9k
aXY+CiAKIFJ1bm5pbmc6IHRlc3RTZXRBdHRyaWJ1dGUKID09PT09IE11dGF0ZWQgdGV4dCBub2Rl
ID09PT09CiAgIDxkaXYgaWQ9Im5vZGUiPkJhcjwvZGl2PgogCitSdW5uaW5nOiB0ZXN0TW9kaWZ5
VmlhUmFuZ2UKKz09PT09PT09PSBPcmlnaW5hbCBmb3IgUmFuZ2UgbXV0YXRpb24gPT09PT09PT0K
KyAgPGRpdiBpZD0icmFuZ2Vub2RlIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvZGl2Pgor
PT09PT0gQ29udGVudHMgbW9kaWZpZWQgdmlhIFJhbmdlID09PT09CistIDxkaXYgaWQ9InJhbmdl
bm9kZSI+CisgICAgICAiTG9yZW0gaXBzIgorICAgICAgPHNwYW4+dGVzdDwvc3Bhbj4KKyAgICAg
ICJsb3Igc2l0IGFtZXQiCisgIDwvZGl2PgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWwKaW5kZXggNmZlZmViNS4uMDhhYjBhNiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0
YS5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9tb2RpZnktY2hhcmRh
dGEuaHRtbApAQCAtMTAsNiArMTAsMTkgQEAgZnVuY3Rpb24gbW9kaWZ5Q2hhcnMoKQogICAgIG5v
ZGUuZmlyc3RDaGlsZC50ZXh0Q29udGVudCA9ICJCYXIiOwogfQogCitmdW5jdGlvbiBtb2RpZnlW
aWFSYW5nZSgpCit7CisgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAg
ICB2YXIgcmVmZXJlbmNlTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyYW5nZW5vZGUi
KS5maXJzdENoaWxkOworICAgIHJhbmdlLnNlbGVjdE5vZGUocmVmZXJlbmNlTm9kZSk7CisgICAg
cmFuZ2Uuc2V0U3RhcnQocmVmZXJlbmNlTm9kZSwgOSk7CisgICAgcmFuZ2Uuc2V0RW5kKHJlZmVy
ZW5jZU5vZGUsIDkgKyA1KTsKKyAgICByYW5nZS5kZWxldGVDb250ZW50cygpOworICAgIHZhciBz
cGFuID0gcmFuZ2Uuc3RhcnRDb250YWluZXIub3duZXJEb2N1bWVudC5jcmVhdGVFbGVtZW50KCJz
cGFuIik7CisgICAgc3Bhbi5pbm5lckhUTUwgPSAidGVzdCI7CisgICAgcmFuZ2UuaW5zZXJ0Tm9k
ZShzcGFuKTsKK30KKwogZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgdmFyIHRhcmdldE5vZGU7CkBA
IC0yMCw3ICszMyw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAgZnVuY3Rpb24gY2Fs
bGJhY2sobm9kZSkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICB0YXJnZXROb2RlID0g
bm9kZTsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiPT09PT09PT09
IE9yaWdpbmFsID09PT09PT09Iik7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRS
ZXN1bHQoIj09PT09PT09PSBPcmlnaW5hbCBmb3Igbm9ybWFsIG11dGF0aW9uID09PT09PT09Iik7
CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVlKHRhcmdldE5v
ZGUpOwogICAgICAgICAgICAgICAgIG5leHQoKTsKICAgICAgICAgICAgIH0KQEAgLTM2LDYgKzQ5
LDI4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAgICAgIG5leHQoKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoIm1vZGlmeUNo
YXJzKCkiLCBjYWxsYmFjayk7CisgICAgICAgIH0sCisKKyAgICAgICAgZnVuY3Rpb24gdGVzdE1v
ZGlmeVZpYVJhbmdlKG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNhbGxi
YWNrKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdCgiPT09PT0gQ29udGVudHMgbW9kaWZpZWQgdmlhIFJhbmdlID09PT09Iik7CisgICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVlKHRhcmdldE5vZGUpOworICAg
ICAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGZ1bmN0aW9u
IGV4cGFuZENhbGxiYWNrKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGFuZEVsZW1lbnRzVHJlZShjYWxsYmFjayk7CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICBmdW5jdGlvbiBzZWxlY3RDYWxsYmFjayhub2RlKQorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIHRhcmdldE5vZGUgPSBub2RlOworICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuYWRkUmVzdWx0KCI9PT09PT09PT0gT3JpZ2luYWwgZm9yIFJhbmdlIG11dGF0aW9uID09
PT09PT09Iik7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVl
KHRhcmdldE5vZGUpOworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBh
Z2UoIm1vZGlmeVZpYVJhbmdlKCkiLCBleHBhbmRDYWxsYmFjayk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBJbnNwZWN0b3JUZXN0LnNlbGVjdE5vZGVXaXRoSWQoInJhbmdlbm9kZSIsIHNl
bGVjdENhbGxiYWNrKTsKICAgICAgICAgfQogICAgIF0pOwogfQpAQCAtNDksNiArODQsNyBAQCBU
ZXN0cyB0aGF0IGVsZW1lbnRzIHBhbmVsIHVwZGF0ZXMgZG9tIHRyZWUgc3RydWN0dXJlIHVwb24g
Y2hhbmdlcyB0byBjaGFyYWN0ZXJzLgogPC9wPgogCiA8ZGl2IGlkPSJub2RlIj5Gb288L2Rpdj4K
KzxkaXYgaWQ9InJhbmdlbm9kZSI+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2Rpdj4KIAog
PC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGQzYmUwODkuLjNmZGEwOTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMS0wNC0wNSAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZs
b3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFJhbmdlIGluc2VydE5vZGUgZnVuY3Rpb24gZG9lcyBu
b3QgdXBkYXRlIGNvbnRlbnQgaW4gdGhlIGluc3BlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc4MjkKKworICAgICAgICAqIGluc3BlY3Rvci9J
bnNwZWN0b3JET01BZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01BZ2Vu
dDo6Z2V0RG9jdW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NQWdlbnQ6OnB1
c2hDaGlsZE5vZGVzVG9Gcm9udGVuZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01B
Z2VudDo6YnVpbGRBcnJheUZvckNvbnRhaW5lckNoaWxkcmVuKToKKyAgICAgICAgKiBpbnNwZWN0
b3IvSW5zcGVjdG9yRE9NQWdlbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRPTUFn
ZW50OjpBdXhpbGlhcnlDaGlsZHJlblJlcXVlc3RlZFNjb3BlOjpBdXhpbGlhcnlDaGlsZHJlblJl
cXVlc3RlZFNjb3BlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckRPTUFnZW50OjpBdXhp
bGlhcnlDaGlsZHJlblJlcXVlc3RlZFNjb3BlOjp+QXV4aWxpYXJ5Q2hpbGRyZW5SZXF1ZXN0ZWRT
Y29wZSk6CisKIDIwMTEtMDQtMDUgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcAppbmRleCA1NDgzY2Q4Li4yYjY0NTY4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAKQEAg
LTQ0Miw4ICs0NDIsMTAgQEAgdm9pZCBJbnNwZWN0b3JET01BZ2VudDo6Z2V0RG9jdW1lbnQoRXJy
b3JTdHJpbmcqLCBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0Piogcm9vdCkKICAgICByZXNldCgpOwog
ICAgIG1fZG9jdW1lbnQgPSBkb2M7CiAKLSAgICBpZiAoIW1fZG9jdW1lbnROb2RlVG9JZE1hcC5j
b250YWlucyhtX2RvY3VtZW50KSkKKyAgICBpZiAoIW1fZG9jdW1lbnROb2RlVG9JZE1hcC5jb250
YWlucyhtX2RvY3VtZW50KSkgeworICAgICAgICBBdXhpbGlhcnlDaGlsZHJlblJlcXVlc3RlZFNj
b3BlIHNjb3BlKHRoaXMpOwogICAgICAgICAqcm9vdCA9IGJ1aWxkT2JqZWN0Rm9yTm9kZShtX2Rv
Y3VtZW50LmdldCgpLCAyLCAmbV9kb2N1bWVudE5vZGVUb0lkTWFwKTsKKyAgICB9CiB9CiAKIHZv
aWQgSW5zcGVjdG9yRE9NQWdlbnQ6OnB1c2hDaGlsZE5vZGVzVG9Gcm9udGVuZChpbnQgbm9kZUlk
KQpAQCAtNDU1LDYgKzQ1Nyw3IEBAIHZvaWQgSW5zcGVjdG9yRE9NQWdlbnQ6OnB1c2hDaGlsZE5v
ZGVzVG9Gcm9udGVuZChpbnQgbm9kZUlkKQogICAgICAgICByZXR1cm47CiAKICAgICBOb2RlVG9J
ZE1hcCogbm9kZU1hcCA9IG1faWRUb05vZGVzTWFwLmdldChub2RlSWQpOworICAgIEF1eGlsaWFy
eUNoaWxkcmVuUmVxdWVzdGVkU2NvcGUgc2NvcGUodGhpcyk7CiAgICAgUmVmUHRyPEluc3BlY3Rv
ckFycmF5PiBjaGlsZHJlbiA9IGJ1aWxkQXJyYXlGb3JDb250YWluZXJDaGlsZHJlbihub2RlLCAx
LCBub2RlTWFwKTsKICAgICBtX2NoaWxkcmVuUmVxdWVzdGVkLmFkZChub2RlSWQpOwogICAgIG1f
ZnJvbnRlbmQtPnNldENoaWxkTm9kZXMobm9kZUlkLCBjaGlsZHJlbi5yZWxlYXNlKCkpOwpAQCAt
MTA5MSw4ICsxMDk0LDExIEBAIFBhc3NSZWZQdHI8SW5zcGVjdG9yQXJyYXk+IEluc3BlY3RvckRP
TUFnZW50OjpidWlsZEFycmF5Rm9yQ29udGFpbmVyQ2hpbGRyZW4oTm9kCiAKICAgICBpZiAoZGVw
dGggPT0gMCkgewogICAgICAgICAvLyBTcGVjaWFsIGNhc2UgdGhlX29ubHkgdGV4dCBjaGlsZC4K
LSAgICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLT5ub2RlVHlwZSgpID09IE5vZGU6OlRFWFRfTk9E
RSAmJiAhaW5uZXJOZXh0U2libGluZyhjaGlsZCkpCisgICAgICAgIGlmIChjaGlsZCAmJiBjaGls
ZC0+bm9kZVR5cGUoKSA9PSBOb2RlOjpURVhUX05PREUgJiYgIWlubmVyTmV4dFNpYmxpbmcoY2hp
bGQpKSB7CisgICAgICAgICAgICBpZiAobV9jdXJyZW50Q2hpbGRyZW5SZXF1ZXN0ZWQpCisgICAg
ICAgICAgICAgICAgbV9jdXJyZW50Q2hpbGRyZW5SZXF1ZXN0ZWQtPmFwcGVuZChiaW5kKGNvbnRh
aW5lciwgbm9kZXNNYXApKTsKICAgICAgICAgICAgIGNoaWxkcmVuLT5wdXNoT2JqZWN0KGJ1aWxk
T2JqZWN0Rm9yTm9kZShjaGlsZCwgMCwgbm9kZXNNYXApKTsKKyAgICAgICAgfQogICAgICAgICBy
ZXR1cm4gY2hpbGRyZW4ucmVsZWFzZSgpOwogICAgIH0gZWxzZSBpZiAoZGVwdGggPiAwKSB7CiAg
ICAgICAgIGRlcHRoLS07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yRE9NQWdlbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01B
Z2VudC5oCmluZGV4IDAwZjNlNmMuLjFjZWYzNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JET01BZ2VudC5oCkBAIC0xNzQsNiArMTc0LDI3IEBAIHB1YmxpYzoKICAg
ICBzdGF0aWMgYm9vbCBpc1doaXRlc3BhY2UoTm9kZSopOwogCiBwcml2YXRlOgorICAgIGNsYXNz
IEF1eGlsaWFyeUNoaWxkcmVuUmVxdWVzdGVkU2NvcGUgeworICAgICAgICBXVEZfTUFLRV9GQVNU
X0FMTE9DQVRFRDsKKyAgICBwdWJsaWM6CisgICAgICAgIEF1eGlsaWFyeUNoaWxkcmVuUmVxdWVz
dGVkU2NvcGUoSW5zcGVjdG9yRE9NQWdlbnQqIGRvbUFnZW50KSA6IG1fZG9tQWdlbnQoZG9tQWdl
bnQpCisgICAgICAgIHsKKyAgICAgICAgICAgIG1fZG9tQWdlbnQtPm1fY3VycmVudENoaWxkcmVu
UmVxdWVzdGVkID0gYWRvcHRQdHIobmV3IFZlY3RvcjxpbnQ+KCkpOworICAgICAgICB9CisKKyAg
ICAgICAgfkF1eGlsaWFyeUNoaWxkcmVuUmVxdWVzdGVkU2NvcGUoKQorICAgICAgICB7CisgICAg
ICAgICAgICBWZWN0b3I8aW50PiogY3VycmVudENoaWxkcmVuUmVxdWVzdGVkID0gbV9kb21BZ2Vu
dC0+bV9jdXJyZW50Q2hpbGRyZW5SZXF1ZXN0ZWQuZ2V0KCk7CisgICAgICAgICAgICBBU1NFUlQo
Y3VycmVudENoaWxkcmVuUmVxdWVzdGVkKTsKKyAgICAgICAgICAgIGZvciAoaW50IGkgPSAwLCBz
aXplID0gY3VycmVudENoaWxkcmVuUmVxdWVzdGVkLT5zaXplKCk7IGkgPCBzaXplOyArK2kpCisg
ICAgICAgICAgICAgICAgbV9kb21BZ2VudC0+bV9jaGlsZHJlblJlcXVlc3RlZC5hZGQoY3VycmVu
dENoaWxkcmVuUmVxdWVzdGVkLT5hdChpKSk7CisgICAgICAgICAgICBtX2RvbUFnZW50LT5tX2N1
cnJlbnRDaGlsZHJlblJlcXVlc3RlZC5jbGVhcigpOworICAgICAgICB9CisKKyAgICBwcml2YXRl
OgorICAgICAgICBJbnNwZWN0b3JET01BZ2VudCogbV9kb21BZ2VudDsKKyAgICB9OworCiAgICAg
SW5zcGVjdG9yRE9NQWdlbnQoSW5zdHJ1bWVudGluZ0FnZW50cyosIFBhZ2UqLCBJbnNwZWN0b3JD
bGllbnQqLCBJbnNwZWN0b3JTdGF0ZSosIEluamVjdGVkU2NyaXB0TWFuYWdlciopOwogCiAgICAg
dm9pZCBzZXRTZWFyY2hpbmdGb3JOb2RlKGJvb2wgZW5hYmxlZCk7CkBAIC0yMjAsNiArMjQxLDcg
QEAgcHJpdmF0ZToKICAgICBIYXNoTWFwPGludCwgTm9kZSo+IG1faWRUb05vZGU7CiAgICAgSGFz
aE1hcDxpbnQsIE5vZGVUb0lkTWFwKj4gbV9pZFRvTm9kZXNNYXA7CiAgICAgSGFzaFNldDxpbnQ+
IG1fY2hpbGRyZW5SZXF1ZXN0ZWQ7CisgICAgT3duUHRyPFZlY3RvcjxpbnQ+ID4gbV9jdXJyZW50
Q2hpbGRyZW5SZXF1ZXN0ZWQ7CiAgICAgaW50IG1fbGFzdE5vZGVJZDsKICAgICBSZWZQdHI8RG9j
dW1lbnQ+IG1fZG9jdW1lbnQ7CiAgICAgRGVxdWU8TWF0Y2hKb2IqPiBtX3BlbmRpbmdNYXRjaEpv
YnM7CkBAIC0yMjksNiArMjUxLDggQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8Tm9kZT4gbV9oaWdo
bGlnaHRlZE5vZGU7CiAgICAgUmVmUHRyPE5vZGU+IG1fbm9kZVRvRm9jdXM7CiAgICAgYm9vbCBt
X3NlYXJjaGluZ0Zvck5vZGU7CisKKyAgICBmcmllbmQgY2xhc3MgQXV4aWxpYXJ5Q2hpbGRyZW5S
ZXF1ZXN0ZWRTY29wZTsKIH07CiAKICNlbmRpZiAvLyBFTkFCTEUoSU5TUEVDVE9SKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88252</attachid>
            <date>2011-04-05 09:27:05 -0700</date>
            <delta_ts>2011-04-05 10:19:48 -0700</delta_ts>
            <desc>[PATCH] Simplified patch, as suggested by pfeldman</desc>
            <filename>insertnode.patch</filename>
            <type>text/plain</type>
            <size>5909</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IDlmZmJjNjY3MTE1MWZiNmQ5ZTkwNjVhMDgzNGVmYzdjZTU4OGFkYWQKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUdWUgQXByIDUg
MTc6NDI6MTIgMjAxMSArMDQwMAoKICAgIEZpeAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZmZkNTRjLi5iZmJlOTRkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMDUgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2
bG92QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXZWIgSW5zcGVjdG9yOiBSYW5nZSBpbnNlcnROb2RlIGZ1bmN0aW9uIGRvZXMg
bm90IHVwZGF0ZSBjb250ZW50IGluIHRoZSBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3ODI5CisKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWw6CisKIDIwMTEtMDQtMDUgIFBhdmVsIFBv
ZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwg
cmV2ZXJ0IGJhZCByZWJhc2VsaW5lIG9mIGVuZ2xpc2gtbHItdGV4dC1leHBlY3RlZC5odG1sIGlu
IHI4MjkxOC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9tb2Rp
ZnktY2hhcmRhdGEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRz
L21vZGlmeS1jaGFyZGF0YS1leHBlY3RlZC50eHQKaW5kZXggNDM1MjI1YS4uN2FlZDQ2OSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0YS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1j
aGFyZGF0YS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMjMgQEAKIFRlc3RzIHRoYXQgZWxlbWVu
dHMgcGFuZWwgdXBkYXRlcyBkb20gdHJlZSBzdHJ1Y3R1cmUgdXBvbiBjaGFuZ2VzIHRvIGNoYXJh
Y3RlcnMuCiAKIEJhcgorTG9yZW0gaXBzdGVzdGxvciBzaXQgYW1ldAogCiBSdW5uaW5nOiB0ZXN0
RHVtcEluaXRpYWwKLT09PT09PT09PSBPcmlnaW5hbCA9PT09PT09PQorPT09PT09PT09IE9yaWdp
bmFsIGZvciBub3JtYWwgbXV0YXRpb24gPT09PT09PT0KICAgPGRpdiBpZD0ibm9kZSI+Rm9vPC9k
aXY+CiAKIFJ1bm5pbmc6IHRlc3RTZXRBdHRyaWJ1dGUKID09PT09IE11dGF0ZWQgdGV4dCBub2Rl
ID09PT09CiAgIDxkaXYgaWQ9Im5vZGUiPkJhcjwvZGl2PgogCitSdW5uaW5nOiB0ZXN0TW9kaWZ5
VmlhUmFuZ2UKKz09PT09PT09PSBPcmlnaW5hbCBmb3IgUmFuZ2UgbXV0YXRpb24gPT09PT09PT0K
KyAgPGRpdiBpZD0icmFuZ2Vub2RlIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvZGl2Pgor
PT09PT0gQ29udGVudHMgbW9kaWZpZWQgdmlhIFJhbmdlID09PT09CistIDxkaXYgaWQ9InJhbmdl
bm9kZSI+CisgICAgICAiTG9yZW0gaXBzIgorICAgICAgPHNwYW4+dGVzdDwvc3Bhbj4KKyAgICAg
ICJsb3Igc2l0IGFtZXQiCisgIDwvZGl2PgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWwKaW5kZXggNmZlZmViNS4uMDhhYjBhNiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0
YS5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9tb2RpZnktY2hhcmRh
dGEuaHRtbApAQCAtMTAsNiArMTAsMTkgQEAgZnVuY3Rpb24gbW9kaWZ5Q2hhcnMoKQogICAgIG5v
ZGUuZmlyc3RDaGlsZC50ZXh0Q29udGVudCA9ICJCYXIiOwogfQogCitmdW5jdGlvbiBtb2RpZnlW
aWFSYW5nZSgpCit7CisgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAg
ICB2YXIgcmVmZXJlbmNlTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyYW5nZW5vZGUi
KS5maXJzdENoaWxkOworICAgIHJhbmdlLnNlbGVjdE5vZGUocmVmZXJlbmNlTm9kZSk7CisgICAg
cmFuZ2Uuc2V0U3RhcnQocmVmZXJlbmNlTm9kZSwgOSk7CisgICAgcmFuZ2Uuc2V0RW5kKHJlZmVy
ZW5jZU5vZGUsIDkgKyA1KTsKKyAgICByYW5nZS5kZWxldGVDb250ZW50cygpOworICAgIHZhciBz
cGFuID0gcmFuZ2Uuc3RhcnRDb250YWluZXIub3duZXJEb2N1bWVudC5jcmVhdGVFbGVtZW50KCJz
cGFuIik7CisgICAgc3Bhbi5pbm5lckhUTUwgPSAidGVzdCI7CisgICAgcmFuZ2UuaW5zZXJ0Tm9k
ZShzcGFuKTsKK30KKwogZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgdmFyIHRhcmdldE5vZGU7CkBA
IC0yMCw3ICszMyw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAgZnVuY3Rpb24gY2Fs
bGJhY2sobm9kZSkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICB0YXJnZXROb2RlID0g
bm9kZTsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiPT09PT09PT09
IE9yaWdpbmFsID09PT09PT09Iik7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRS
ZXN1bHQoIj09PT09PT09PSBPcmlnaW5hbCBmb3Igbm9ybWFsIG11dGF0aW9uID09PT09PT09Iik7
CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVlKHRhcmdldE5v
ZGUpOwogICAgICAgICAgICAgICAgIG5leHQoKTsKICAgICAgICAgICAgIH0KQEAgLTM2LDYgKzQ5
LDI4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAgICAgIG5leHQoKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoIm1vZGlmeUNo
YXJzKCkiLCBjYWxsYmFjayk7CisgICAgICAgIH0sCisKKyAgICAgICAgZnVuY3Rpb24gdGVzdE1v
ZGlmeVZpYVJhbmdlKG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNhbGxi
YWNrKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdCgiPT09PT0gQ29udGVudHMgbW9kaWZpZWQgdmlhIFJhbmdlID09PT09Iik7CisgICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVlKHRhcmdldE5vZGUpOworICAg
ICAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGZ1bmN0aW9u
IGV4cGFuZENhbGxiYWNrKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGFuZEVsZW1lbnRzVHJlZShjYWxsYmFjayk7CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICBmdW5jdGlvbiBzZWxlY3RDYWxsYmFjayhub2RlKQorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIHRhcmdldE5vZGUgPSBub2RlOworICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuYWRkUmVzdWx0KCI9PT09PT09PT0gT3JpZ2luYWwgZm9yIFJhbmdlIG11dGF0aW9uID09
PT09PT09Iik7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVl
KHRhcmdldE5vZGUpOworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBh
Z2UoIm1vZGlmeVZpYVJhbmdlKCkiLCBleHBhbmRDYWxsYmFjayk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBJbnNwZWN0b3JUZXN0LnNlbGVjdE5vZGVXaXRoSWQoInJhbmdlbm9kZSIsIHNl
bGVjdENhbGxiYWNrKTsKICAgICAgICAgfQogICAgIF0pOwogfQpAQCAtNDksNiArODQsNyBAQCBU
ZXN0cyB0aGF0IGVsZW1lbnRzIHBhbmVsIHVwZGF0ZXMgZG9tIHRyZWUgc3RydWN0dXJlIHVwb24g
Y2hhbmdlcyB0byBjaGFyYWN0ZXJzLgogPC9wPgogCiA8ZGl2IGlkPSJub2RlIj5Gb288L2Rpdj4K
KzxkaXYgaWQ9InJhbmdlbm9kZSI+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2Rpdj4KIAog
PC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGQzYmUwODkuLmUwZmRjOWIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMS0wNC0wNSAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZs
b3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFJhbmdlIGluc2VydE5vZGUgZnVuY3Rpb24gZG9lcyBu
b3QgdXBkYXRlIGNvbnRlbnQgaW4gdGhlIGluc3BlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc4MjkKKworICAgICAgICAqIGluc3BlY3Rvci9J
bnNwZWN0b3JET01BZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01BZ2Vu
dDo6YnVpbGRBcnJheUZvckNvbnRhaW5lckNoaWxkcmVuKToKKwogMjAxMS0wNC0wNSAgQWxleGV5
IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBBZGxlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JE
T01BZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQu
Y3BwCmluZGV4IDU0ODNjZDguLmEyNDAwY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JET01BZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckRPTUFnZW50LmNwcApAQCAtMTA5MCwxNCArMTA5MCwxNSBAQCBQYXNzUmVm
UHRyPEluc3BlY3RvckFycmF5PiBJbnNwZWN0b3JET01BZ2VudDo6YnVpbGRBcnJheUZvckNvbnRh
aW5lckNoaWxkcmVuKE5vZAogICAgIE5vZGUqIGNoaWxkID0gaW5uZXJGaXJzdENoaWxkKGNvbnRh
aW5lcik7CiAKICAgICBpZiAoZGVwdGggPT0gMCkgewotICAgICAgICAvLyBTcGVjaWFsIGNhc2Ug
dGhlX29ubHkgdGV4dCBjaGlsZC4KKyAgICAgICAgLy8gU3BlY2lhbC1jYXNlIHRoZSBvbmx5IHRl
eHQgY2hpbGQgLSBwcmV0ZW5kIHRoYXQgY29udGFpbmVyJ3MgY2hpbGRyZW4gaGF2ZSBiZWVuIHJl
cXVlc3RlZC4KICAgICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLT5ub2RlVHlwZSgpID09IE5vZGU6
OlRFWFRfTk9ERSAmJiAhaW5uZXJOZXh0U2libGluZyhjaGlsZCkpCi0gICAgICAgICAgICBjaGls
ZHJlbi0+cHVzaE9iamVjdChidWlsZE9iamVjdEZvck5vZGUoY2hpbGQsIDAsIG5vZGVzTWFwKSk7
CisgICAgICAgICAgICByZXR1cm4gYnVpbGRBcnJheUZvckNvbnRhaW5lckNoaWxkcmVuKGNvbnRh
aW5lciwgMSwgbm9kZXNNYXApOwogICAgICAgICByZXR1cm4gY2hpbGRyZW4ucmVsZWFzZSgpOwot
ICAgIH0gZWxzZSBpZiAoZGVwdGggPiAwKSB7Ci0gICAgICAgIGRlcHRoLS07CiAgICAgfQogCisg
ICAgZGVwdGgtLTsKKyAgICBtX2NoaWxkcmVuUmVxdWVzdGVkLmFkZChiaW5kKGNvbnRhaW5lciwg
bm9kZXNNYXApKTsKKwogICAgIHdoaWxlIChjaGlsZCkgewogICAgICAgICBjaGlsZHJlbi0+cHVz
aE9iamVjdChidWlsZE9iamVjdEZvck5vZGUoY2hpbGQsIGRlcHRoLCBub2Rlc01hcCkpOwogICAg
ICAgICBjaGlsZCA9IGlubmVyTmV4dFNpYmxpbmcoY2hpbGQpOwo=
</data>
<flag name="review"
          id="80732"
          type_id="1"
          status="-"
          setter="pfeldman"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88267</attachid>
            <date>2011-04-05 10:19:48 -0700</date>
            <delta_ts>2011-04-06 02:28:47 -0700</delta_ts>
            <desc>[PATCH] Comment addressed</desc>
            <filename>insertnode.patch</filename>
            <type>text/plain</type>
            <size>6305</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">Y29tbWl0IDFlY2JiYzFmZWEwZDE2NGM3MWYxODAyYWZkMjNmMjUxOTlmYTA2MDcKQXV0aG9yOiBB
bGV4YW5kZXIgUGF2bG92IDxhcGF2bG92QGNocm9taXVtLm9yZz4KRGF0ZTogICBUdWUgQXByIDUg
MTc6NDI6MTIgMjAxMSArMDQwMAoKICAgIEZpeAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzZmZkNTRjLi5iZmJlOTRkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTEtMDQtMDUgIEFsZXhhbmRlciBQYXZsb3YgIDxhcGF2
bG92QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXZWIgSW5zcGVjdG9yOiBSYW5nZSBpbnNlcnROb2RlIGZ1bmN0aW9uIGRvZXMg
bm90IHVwZGF0ZSBjb250ZW50IGluIHRoZSBpbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU3ODI5CisKKyAgICAgICAgKiBpbnNwZWN0b3Iv
ZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBpbnNwZWN0
b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWw6CisKIDIwMTEtMDQtMDUgIFBhdmVsIFBv
ZGl2aWxvdiAgPHBvZGl2aWxvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwg
cmV2ZXJ0IGJhZCByZWJhc2VsaW5lIG9mIGVuZ2xpc2gtbHItdGV4dC1leHBlY3RlZC5odG1sIGlu
IHI4MjkxOC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9tb2Rp
ZnktY2hhcmRhdGEtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRz
L21vZGlmeS1jaGFyZGF0YS1leHBlY3RlZC50eHQKaW5kZXggNDM1MjI1YS4uN2FlZDQ2OSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0YS1l
eHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1j
aGFyZGF0YS1leHBlY3RlZC50eHQKQEAgLTEsMTIgKzEsMjMgQEAKIFRlc3RzIHRoYXQgZWxlbWVu
dHMgcGFuZWwgdXBkYXRlcyBkb20gdHJlZSBzdHJ1Y3R1cmUgdXBvbiBjaGFuZ2VzIHRvIGNoYXJh
Y3RlcnMuCiAKIEJhcgorTG9yZW0gaXBzdGVzdGxvciBzaXQgYW1ldAogCiBSdW5uaW5nOiB0ZXN0
RHVtcEluaXRpYWwKLT09PT09PT09PSBPcmlnaW5hbCA9PT09PT09PQorPT09PT09PT09IE9yaWdp
bmFsIGZvciBub3JtYWwgbXV0YXRpb24gPT09PT09PT0KICAgPGRpdiBpZD0ibm9kZSI+Rm9vPC9k
aXY+CiAKIFJ1bm5pbmc6IHRlc3RTZXRBdHRyaWJ1dGUKID09PT09IE11dGF0ZWQgdGV4dCBub2Rl
ID09PT09CiAgIDxkaXYgaWQ9Im5vZGUiPkJhcjwvZGl2PgogCitSdW5uaW5nOiB0ZXN0TW9kaWZ5
VmlhUmFuZ2UKKz09PT09PT09PSBPcmlnaW5hbCBmb3IgUmFuZ2UgbXV0YXRpb24gPT09PT09PT0K
KyAgPGRpdiBpZD0icmFuZ2Vub2RlIj5Mb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldDwvZGl2Pgor
PT09PT0gQ29udGVudHMgbW9kaWZpZWQgdmlhIFJhbmdlID09PT09CistIDxkaXYgaWQ9InJhbmdl
bm9kZSI+CisgICAgICAiTG9yZW0gaXBzIgorICAgICAgPHNwYW4+dGVzdDwvc3Bhbj4KKyAgICAg
ICJsb3Igc2l0IGFtZXQiCisgIDwvZGl2PgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0
b3IvZWxlbWVudHMvbW9kaWZ5LWNoYXJkYXRhLmh0bWwKaW5kZXggNmZlZmViNS4uMDhhYjBhNiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2VsZW1lbnRzL21vZGlmeS1jaGFyZGF0
YS5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9lbGVtZW50cy9tb2RpZnktY2hhcmRh
dGEuaHRtbApAQCAtMTAsNiArMTAsMTkgQEAgZnVuY3Rpb24gbW9kaWZ5Q2hhcnMoKQogICAgIG5v
ZGUuZmlyc3RDaGlsZC50ZXh0Q29udGVudCA9ICJCYXIiOwogfQogCitmdW5jdGlvbiBtb2RpZnlW
aWFSYW5nZSgpCit7CisgICAgdmFyIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAg
ICB2YXIgcmVmZXJlbmNlTm9kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyYW5nZW5vZGUi
KS5maXJzdENoaWxkOworICAgIHJhbmdlLnNlbGVjdE5vZGUocmVmZXJlbmNlTm9kZSk7CisgICAg
cmFuZ2Uuc2V0U3RhcnQocmVmZXJlbmNlTm9kZSwgOSk7CisgICAgcmFuZ2Uuc2V0RW5kKHJlZmVy
ZW5jZU5vZGUsIDkgKyA1KTsKKyAgICByYW5nZS5kZWxldGVDb250ZW50cygpOworICAgIHZhciBz
cGFuID0gcmFuZ2Uuc3RhcnRDb250YWluZXIub3duZXJEb2N1bWVudC5jcmVhdGVFbGVtZW50KCJz
cGFuIik7CisgICAgc3Bhbi5pbm5lckhUTUwgPSAidGVzdCI7CisgICAgcmFuZ2UuaW5zZXJ0Tm9k
ZShzcGFuKTsKK30KKwogZnVuY3Rpb24gdGVzdCgpCiB7CiAgICAgdmFyIHRhcmdldE5vZGU7CkBA
IC0yMCw3ICszMyw3IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAgZnVuY3Rpb24gY2Fs
bGJhY2sobm9kZSkKICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICB0YXJnZXROb2RlID0g
bm9kZTsKLSAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJlc3VsdCgiPT09PT09PT09
IE9yaWdpbmFsID09PT09PT09Iik7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5hZGRS
ZXN1bHQoIj09PT09PT09PSBPcmlnaW5hbCBmb3Igbm9ybWFsIG11dGF0aW9uID09PT09PT09Iik7
CiAgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVlKHRhcmdldE5v
ZGUpOwogICAgICAgICAgICAgICAgIG5leHQoKTsKICAgICAgICAgICAgIH0KQEAgLTM2LDYgKzQ5
LDI4IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICAgICAgICAgIG5leHQoKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBhZ2UoIm1vZGlmeUNo
YXJzKCkiLCBjYWxsYmFjayk7CisgICAgICAgIH0sCisKKyAgICAgICAgZnVuY3Rpb24gdGVzdE1v
ZGlmeVZpYVJhbmdlKG5leHQpCisgICAgICAgIHsKKyAgICAgICAgICAgIGZ1bmN0aW9uIGNhbGxi
YWNrKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0b3JUZXN0LmFkZFJl
c3VsdCgiPT09PT0gQ29udGVudHMgbW9kaWZpZWQgdmlhIFJhbmdlID09PT09Iik7CisgICAgICAg
ICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVlKHRhcmdldE5vZGUpOworICAg
ICAgICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGZ1bmN0aW9u
IGV4cGFuZENhbGxiYWNrKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBJbnNwZWN0
b3JUZXN0LmV4cGFuZEVsZW1lbnRzVHJlZShjYWxsYmFjayk7CisgICAgICAgICAgICB9CisgICAg
ICAgICAgICBmdW5jdGlvbiBzZWxlY3RDYWxsYmFjayhub2RlKQorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIHRhcmdldE5vZGUgPSBub2RlOworICAgICAgICAgICAgICAgIEluc3BlY3Rv
clRlc3QuYWRkUmVzdWx0KCI9PT09PT09PT0gT3JpZ2luYWwgZm9yIFJhbmdlIG11dGF0aW9uID09
PT09PT09Iik7CisgICAgICAgICAgICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wRWxlbWVudHNUcmVl
KHRhcmdldE5vZGUpOworICAgICAgICAgICAgICAgIEluc3BlY3RvclRlc3QuZXZhbHVhdGVJblBh
Z2UoIm1vZGlmeVZpYVJhbmdlKCkiLCBleHBhbmRDYWxsYmFjayk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgICBJbnNwZWN0b3JUZXN0LnNlbGVjdE5vZGVXaXRoSWQoInJhbmdlbm9kZSIsIHNl
bGVjdENhbGxiYWNrKTsKICAgICAgICAgfQogICAgIF0pOwogfQpAQCAtNDksNiArODQsNyBAQCBU
ZXN0cyB0aGF0IGVsZW1lbnRzIHBhbmVsIHVwZGF0ZXMgZG9tIHRyZWUgc3RydWN0dXJlIHVwb24g
Y2hhbmdlcyB0byBjaGFyYWN0ZXJzLgogPC9wPgogCiA8ZGl2IGlkPSJub2RlIj5Gb288L2Rpdj4K
KzxkaXYgaWQ9InJhbmdlbm9kZSI+TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ8L2Rpdj4KIAog
PC9ib2R5PgogPC9odG1sPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGQzYmUwODkuLmY5YmY2YWEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMS0wNC0wNSAgQWxleGFuZGVyIFBhdmxvdiAgPGFwYXZs
b3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFdlYiBJbnNwZWN0b3I6IFJhbmdlIGluc2VydE5vZGUgZnVuY3Rpb24gZG9lcyBu
b3QgdXBkYXRlIGNvbnRlbnQgaW4gdGhlIGluc3BlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc4MjkKKworICAgICAgICAqIGluc3BlY3Rvci9J
bnNwZWN0b3JET01BZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JET01BZ2Vu
dDo6cHVzaENoaWxkTm9kZXNUb0Zyb250ZW5kKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckRPTUFnZW50OjpidWlsZEFycmF5Rm9yQ29udGFpbmVyQ2hpbGRyZW4pOgorCiAyMDExLTA0LTA1
ICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckRPTUFnZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JE
T01BZ2VudC5jcHAKaW5kZXggNTQ4M2NkOC4uZDgyYjI4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTUFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NQWdlbnQuY3BwCkBAIC00NTYsNyArNDU2LDYgQEAgdm9p
ZCBJbnNwZWN0b3JET01BZ2VudDo6cHVzaENoaWxkTm9kZXNUb0Zyb250ZW5kKGludCBub2RlSWQp
CiAKICAgICBOb2RlVG9JZE1hcCogbm9kZU1hcCA9IG1faWRUb05vZGVzTWFwLmdldChub2RlSWQp
OwogICAgIFJlZlB0cjxJbnNwZWN0b3JBcnJheT4gY2hpbGRyZW4gPSBidWlsZEFycmF5Rm9yQ29u
dGFpbmVyQ2hpbGRyZW4obm9kZSwgMSwgbm9kZU1hcCk7Ci0gICAgbV9jaGlsZHJlblJlcXVlc3Rl
ZC5hZGQobm9kZUlkKTsKICAgICBtX2Zyb250ZW5kLT5zZXRDaGlsZE5vZGVzKG5vZGVJZCwgY2hp
bGRyZW4ucmVsZWFzZSgpKTsKIH0KIApAQCAtMTA5MCwxNCArMTA4OSwxNSBAQCBQYXNzUmVmUHRy
PEluc3BlY3RvckFycmF5PiBJbnNwZWN0b3JET01BZ2VudDo6YnVpbGRBcnJheUZvckNvbnRhaW5l
ckNoaWxkcmVuKE5vZAogICAgIE5vZGUqIGNoaWxkID0gaW5uZXJGaXJzdENoaWxkKGNvbnRhaW5l
cik7CiAKICAgICBpZiAoZGVwdGggPT0gMCkgewotICAgICAgICAvLyBTcGVjaWFsIGNhc2UgdGhl
X29ubHkgdGV4dCBjaGlsZC4KKyAgICAgICAgLy8gU3BlY2lhbC1jYXNlIHRoZSBvbmx5IHRleHQg
Y2hpbGQgLSBwcmV0ZW5kIHRoYXQgY29udGFpbmVyJ3MgY2hpbGRyZW4gaGF2ZSBiZWVuIHJlcXVl
c3RlZC4KICAgICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLT5ub2RlVHlwZSgpID09IE5vZGU6OlRF
WFRfTk9ERSAmJiAhaW5uZXJOZXh0U2libGluZyhjaGlsZCkpCi0gICAgICAgICAgICBjaGlsZHJl
bi0+cHVzaE9iamVjdChidWlsZE9iamVjdEZvck5vZGUoY2hpbGQsIDAsIG5vZGVzTWFwKSk7Cisg
ICAgICAgICAgICByZXR1cm4gYnVpbGRBcnJheUZvckNvbnRhaW5lckNoaWxkcmVuKGNvbnRhaW5l
ciwgMSwgbm9kZXNNYXApOwogICAgICAgICByZXR1cm4gY2hpbGRyZW4ucmVsZWFzZSgpOwotICAg
IH0gZWxzZSBpZiAoZGVwdGggPiAwKSB7Ci0gICAgICAgIGRlcHRoLS07CiAgICAgfQogCisgICAg
ZGVwdGgtLTsKKyAgICBtX2NoaWxkcmVuUmVxdWVzdGVkLmFkZChiaW5kKGNvbnRhaW5lciwgbm9k
ZXNNYXApKTsKKwogICAgIHdoaWxlIChjaGlsZCkgewogICAgICAgICBjaGlsZHJlbi0+cHVzaE9i
amVjdChidWlsZE9iamVjdEZvck5vZGUoY2hpbGQsIGRlcHRoLCBub2Rlc01hcCkpOwogICAgICAg
ICBjaGlsZCA9IGlubmVyTmV4dFNpYmxpbmcoY2hpbGQpOwo=
</data>
<flag name="review"
          id="80754"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>