<?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>8961</bug_id>
          
          <creation_ts>2006-05-17 13:23:03 -0700</creation_ts>
          <short_desc>document.write() doesn&apos;t flush plain text</short_desc>
          <delta_ts>2019-05-02 16:20:24 -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>DOM</component>
          <version>420+</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>
          
          <blocked>16230</blocked>
    
    <blocked>44024</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Krishna">krishnamurty.podipireddy</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>abarth</cc>
    
    <cc>anantha</cc>
    
    <cc>ap</cc>
    
    <cc>catfish.man</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>enadil</cc>
    
    <cc>eric</cc>
    
    <cc>helen_hope</cc>
    
    <cc>ian</cc>
    
    <cc>jon</cc>
    
    <cc>just1gb</cc>
    
    <cc>oliver</cc>
    
    <cc>S60webkit</cc>
    
    <cc>swartz</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>42737</commentid>
    <comment_count>0</comment_count>
    <who name="Krishna">krishnamurty.podipireddy</who>
    <bug_when>2006-05-17 13:23:03 -0700</bug_when>
    <thetext>Steps To Reproduce:
1. Open Safari or S60 Web Browser
2. Load the test file
3. Click the link &quot;Prompt&quot;
4. Edit text in the prompt dialog
5. Select OK for prompt dialog.

Expected Result:
Prompt dialog closes and result page is loaded with the edited text

Actual Result:
Prompt dialog closes and a blank result page opened.


Test source:
&lt;html&gt;

&lt;head&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
function message(){
var name = prompt(&quot;Please enter your name&quot;,&quot;John Wayne&quot;)
if (name != null &amp;&amp; name != &quot;&quot;)
{
document.write(&quot;Hello &quot; + name)
}

}
&lt;/script&gt;
&lt;/head&gt;


&lt;body&gt;

&lt;p&gt; Select the link &quot;Prompt&quot; and verify that the prompt dialog is displayed correctly. &lt;/p&gt;

&lt;a href=&quot;javascript: message()&quot;&gt;Prompt&lt;/a&gt; &lt;br/&gt;

&lt;/body&gt;
&lt;/html&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42738</commentid>
    <comment_count>1</comment_count>
      <attachid>8372</attachid>
    <who name="Krishna">krishnamurty.podipireddy</who>
    <bug_when>2006-05-17 13:24:27 -0700</bug_when>
    <thetext>Created attachment 8372
prompt dialog test case

This test page is same as the given test source in the description.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42739</commentid>
    <comment_count>2</comment_count>
    <who name="Krishna">krishnamurty.podipireddy</who>
    <bug_when>2006-05-17 13:36:22 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=8372) [edit]
&gt; prompt dialog test case
&gt; This test page is same as the given test source in the description.

The browser expects the close html tag, after the document writes are complete. The behaviour is same on both safari and S60 Web Browser. The follwoing function works ok. But can we expect the content author to write this kind of javascript function?

function message(){
var name = prompt(&quot;Please enter your name&quot;,&quot;John Wayne&quot;)
alert(name);
if (name != null &amp;&amp; name != &quot;&quot;)
{
document.write(&quot;Hello &quot; + name);
document.write(&quot;&lt;/body&gt;&lt;/html&gt;&quot;);
}
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>42822</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-05-18 05:23:02 -0700</bug_when>
    <thetext>The text does get displayed when any HTML tag is written, though - try changing the name to &quot;John Wayne&lt;/p&gt;&quot;. Or to &quot;John&lt;p&gt;Wayne&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44012</commentid>
    <comment_count>4</comment_count>
    <who name="Krishna">krishnamurty.podipireddy</who>
    <bug_when>2006-05-30 10:36:07 -0700</bug_when>
    <thetext>TSW Error ID: EXTH-6HL4ZD</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>47241</commentid>
    <comment_count>5</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-06-26 03:19:51 -0700</bug_when>
    <thetext>*** Bug 9587 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>47242</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-06-26 03:21:49 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; *** Bug 9587 has been marked as a duplicate of this bug. *** 

Hmm...how do we want to handle this?  My inclination is to change the Hardware, OS and Version settings to match &quot;HEAD&quot; rather than the S60 branch.  Should we just keep these bugs separate instead?

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>47245</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-06-26 03:47:10 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Hmm...how do we want to handle this?  My inclination is to change the Hardware,
&gt; OS and Version settings to match &quot;HEAD&quot; rather than the S60 branch.

Indeed - I&apos;ve been told before that this is how bugs still present in TOT are supposed to be handled. Changing to All/All/420+.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>47263</commentid>
    <comment_count>8</comment_count>
    <who name="Joost de Valk (AlthA)">joost</who>
    <bug_when>2006-06-26 04:49:52 -0700</bug_when>
    <thetext>I definitly agree on this, it&apos;s up to nokia to backport a patch :) .</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>39922</commentid>
    <comment_count>9</comment_count>
      <attachid>12004</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2006-12-24 08:42:02 -0800</bug_when>
    <thetext>Created attachment 12004
automated test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>57136</commentid>
    <comment_count>10</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-09-26 21:27:46 -0700</bug_when>
    <thetext>*** Bug 14709 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>57137</commentid>
    <comment_count>11</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-09-26 21:28:41 -0700</bug_when>
    <thetext>Bug 14709 has some in-depth discussion of this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>59567</commentid>
    <comment_count>12</comment_count>
      <attachid>16888</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-10-26 12:58:25 -0700</bug_when>
    <thetext>Created attachment 16888
a slightly more evil test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>65744</commentid>
    <comment_count>13</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2007-12-30 07:06:03 -0800</bug_when>
    <thetext>*** Bug 7885 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66360</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-01-06 00:21:34 -0800</bug_when>
    <thetext>*** Bug 16762 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70295</commentid>
    <comment_count>15</comment_count>
      <attachid>19076</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-11 12:39:36 -0800</bug_when>
    <thetext>Created attachment 19076
This patch fixes the test cases.

Nobody ever recorded which Acid3 test this affects in the bug.  My score on Acid3 does not change with this patch, so either the patch isn&apos;t good enough or the test has changed to make this no longer be an Acid3 issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70296</commentid>
    <comment_count>16</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-11 12:42:33 -0800</bug_when>
    <thetext>Looks like this is no longer related to Acid3.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70297</commentid>
    <comment_count>17</comment_count>
      <attachid>19076</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-11 12:43:44 -0800</bug_when>
    <thetext>Comment on attachment 19076
This patch fixes the test cases.

I will land the evil test case from the bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70300</commentid>
    <comment_count>18</comment_count>
    <who name="Robert Blaut">webkit</who>
    <bug_when>2008-02-11 12:48:29 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; Created an attachment (id=19076) [edit]
&gt; This patch fixes the test cases.
&gt; 
&gt; Nobody ever recorded which Acid3 test this affects in the bug.  My score on
&gt; Acid3 does not change with this patch, so either the patch isn&apos;t good enough or
&gt; the test has changed to make this no longer be an Acid3 issue.
&gt; 

Dave, look into this bug 16762. The bug have description about relation between Acid3 test and this bug.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>70301</commentid>
    <comment_count>19</comment_count>
      <attachid>19076</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-02-11 12:49:03 -0800</bug_when>
    <thetext>Comment on attachment 19076
This patch fixes the test cases.

Actually need to think about this some more.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>77720</commentid>
    <comment_count>20</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-04-15 13:24:36 -0700</bug_when>
    <thetext>I believe this is the bug causing these Hixie tests to fail:
http://hixie.ch/tests/adhoc/dom/level0/write/007.html
http://hixie.ch/tests/adhoc/dom/level0/write/008.html
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>89709</commentid>
    <comment_count>21</comment_count>
    <who name="">mitz</who>
    <bug_when>2008-08-28 18:35:53 -0700</bug_when>
    <thetext>*** Bug 20563 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>91977</commentid>
    <comment_count>22</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-09-21 02:41:09 -0700</bug_when>
    <thetext>*** Bug 20970 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>98807</commentid>
    <comment_count>23</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-11-14 11:12:46 -0800</bug_when>
    <thetext>*** Bug 22234 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>100630</commentid>
    <comment_count>24</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2008-11-28 13:28:50 -0800</bug_when>
    <thetext>*** Bug 13043 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>126418</commentid>
    <comment_count>25</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2009-06-17 01:44:36 -0700</bug_when>
    <thetext>*** Bug 26432 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264600</commentid>
    <comment_count>26</comment_count>
      <attachid>64401</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-13 20:21:27 -0700</bug_when>
    <thetext>Created attachment 64401
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264601</commentid>
    <comment_count>27</comment_count>
      <attachid>64401</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-08-13 20:23:18 -0700</bug_when>
    <thetext>Comment on attachment 64401
Patch

WebCore/ChangeLog:9
 +          reached the end of the input stream, but that&apos;s now how the spec
now how.  You mean &quot;not&quot; how.

Yay test driven development!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264603</commentid>
    <comment_count>28</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-13 20:23:23 -0700</bug_when>
    <thetext>*** Bug 14599 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264604</commentid>
    <comment_count>29</comment_count>
      <attachid>64402</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-13 20:25:06 -0700</bug_when>
    <thetext>Created attachment 64402
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264629</commentid>
    <comment_count>30</comment_count>
      <attachid>64402</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-13 22:39:41 -0700</bug_when>
    <thetext>Comment on attachment 64402
Patch for landing

Rejecting patch 64402 from commit-queue.

Failed to run &quot;[u&apos;/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply&apos;, u&apos;--force&apos;]&quot; exit_code: 1
Last 500 characters of output:
ocument-write-evil-expected.txt
patching file LayoutTests/fast/tokenizer/flush-characters-in-document-write-evil.html
patching file LayoutTests/fast/tokenizer/flush-characters-in-document-write-expected.txt
patching file LayoutTests/fast/tokenizer/flush-characters-in-document-write.html
patching file WebCore/ChangeLog
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file WebCore/ChangeLog.rej
patching file WebCore/html/HTMLTokenizer.cpp
patching file WebCore/html/HTMLTokenizer.h

Full output: http://queues.webkit.org/results/3775148</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264636</commentid>
    <comment_count>31</comment_count>
      <attachid>64409</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-13 23:24:30 -0700</bug_when>
    <thetext>Created attachment 64409
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264662</commentid>
    <comment_count>32</comment_count>
      <attachid>64409</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-14 01:45:08 -0700</bug_when>
    <thetext>Comment on attachment 64409
Patch for landing

Rejecting patch 64409 from commit-queue.

Failed to run &quot;[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--exit-after-n-failures=1&apos;, &apos;--wait-for-httpd&apos;, &apos;--ignore-tests&apos;, &apos;compositing&apos;, &apos;--quiet&apos;]&quot; exit_code: 1
Running build-dumprendertree
Compiling Java tests
make: Nothing to be done for `default&apos;.
Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests
Testing 20839 test cases.
http/tests/appcache/credential-url.html -&gt; crashed

Exiting early after 1 failures. 19873 tests run.
747.73s total testing time

19872 test cases (99%) succeeded
1 test case (&lt;1%) crashed
281 test cases (1%) had stderr output

Full output: http://queues.webkit.org/results/3768150</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264695</commentid>
    <comment_count>33</comment_count>
      <attachid>64409</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-08-14 08:39:05 -0700</bug_when>
    <thetext>Comment on attachment 64409
Patch for landing

Looks like a flake.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264712</commentid>
    <comment_count>34</comment_count>
      <attachid>64409</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-14 10:43:18 -0700</bug_when>
    <thetext>Comment on attachment 64409
Patch for landing

Rejecting patch 64409 from commit-queue.

Failed to run &quot;[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--exit-after-n-failures=1&apos;, &apos;--wait-for-httpd&apos;, &apos;--ignore-tests&apos;, &apos;compositing&apos;, &apos;--quiet&apos;]&quot; exit_code: 1
Running build-dumprendertree
Compiling Java tests
make: Nothing to be done for `default&apos;.
Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests
Testing 20840 test cases.
http/tests/appcache/credential-url.html -&gt; crashed

Exiting early after 1 failures. 19874 tests run.
738.32s total testing time

19873 test cases (99%) succeeded
1 test case (&lt;1%) crashed
276 test cases (1%) had stderr output

Full output: http://queues.webkit.org/results/3747160</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264807</commentid>
    <comment_count>35</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-15 00:10:06 -0700</bug_when>
    <thetext>This patch caused an existing test to expose an existing crasher (Bug 44024), which we&apos;ll want to fix before landing this patch.  ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264862</commentid>
    <comment_count>36</comment_count>
      <attachid>64409</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-15 12:24:13 -0700</bug_when>
    <thetext>Comment on attachment 64409
Patch for landing

Okiedokes.  Let&apos;s give this another try.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264864</commentid>
    <comment_count>37</comment_count>
      <attachid>64409</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-15 12:43:41 -0700</bug_when>
    <thetext>Comment on attachment 64409
Patch for landing

Clearing flags on attachment: 64409

Committed r65382: &lt;http://trac.webkit.org/changeset/65382&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>264865</commentid>
    <comment_count>38</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-08-15 12:43:50 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>370510</commentid>
    <comment_count>39</comment_count>
    <who name="Joel Parks">joel.parks</who>
    <bug_when>2011-03-21 11:52:08 -0700</bug_when>
    <thetext>re-purposing InTSW keyword for use by QtWebkit team</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>8372</attachid>
            <date>2006-05-17 13:24:27 -0700</date>
            <delta_ts>2006-05-17 13:24:27 -0700</delta_ts>
            <desc>prompt dialog test case</desc>
            <filename>ecma_prompt.html</filename>
            <type>text/html</type>
            <size>408</size>
            <attacher name="Krishna">krishnamurty.podipireddy</attacher>
            
              <data encoding="base64">PGh0bWw+DQoNCjxoZWFkPg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KZnVuY3Rp
b24gbWVzc2FnZSgpew0KdmFyIG5hbWUgPSBwcm9tcHQoIlBsZWFzZSBlbnRlciB5b3VyIG5hbWUi
LCJKb2huIFdheW5lIikNCmlmIChuYW1lICE9IG51bGwgJiYgbmFtZSAhPSAiIikNCnsNCmRvY3Vt
ZW50LndyaXRlKCJIZWxsbyAiICsgbmFtZSkNCn0NCg0KfQ0KPC9zY3JpcHQ+DQo8L2hlYWQ+DQoN
Cg0KPGJvZHk+DQoNCjxwPiBTZWxlY3QgdGhlIGxpbmsgIlByb21wdCIgYW5kIHZlcmlmeSB0aGF0
IHRoZSBwcm9tcHQgZGlhbG9nIGlzIGRpc3BsYXllZCBjb3JyZWN0bHkuIDwvcD4NCg0KPGEgaHJl
Zj0iamF2YXNjcmlwdDogbWVzc2FnZSgpIj5Qcm9tcHQ8L2E+IDxici8+DQoNCjwvYm9keT4NCjwv
aHRtbD4NCg0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>12004</attachid>
            <date>2006-12-24 08:42:02 -0800</date>
            <delta_ts>2006-12-24 08:42:02 -0800</delta_ts>
            <desc>automated test</desc>
            <filename>write-plain-text.html</filename>
            <type>text/html</type>
            <size>471</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">PGhlYWQ+CjxzY3JpcHQ+CmZ1bmN0aW9uIHRlc3QoKSB7CiAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlcikgewogICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwogICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwogIH0KICAKICAvL2RvY3VtZW50
LndyaXRlKCI8cD5UZXN0IGZvciA8YSBocmVmPSdodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD04OTYxJz5idWcgODk2MTwvYT46ZG9jdW1lbnQud3JpdGUoKSBkb2Vzbid0IGZs
dXNoIHBsYWluIHRleHQuPC9wPiIpOwogIAogIGRvY3VtZW50LndyaXRlKCJTaG91bGQgc2F5IFNV
Q0NFU1M6PHA+U1VDQ0VTUyIpOwogIAogIHNldFRpbWVvdXQoImxheW91dFRlc3RDb250cm9sbGVy
Lm5vdGlmeURvbmUoKSIsIDEpOwp9Owo8L3NjcmlwdD4KPC9oZWFkPgo8Ym9keSBvbmxvYWQ9InRl
c3QoKSI+CjwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>16888</attachid>
            <date>2007-10-26 12:58:25 -0700</date>
            <delta_ts>2007-10-26 12:58:25 -0700</delta_ts>
            <desc>a slightly more evil test</desc>
            <filename>flush-plain-text.html</filename>
            <type>text/html</type>
            <size>697</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">PGhlYWQ+CjxzY3JpcHQ+CmZ1bmN0aW9uIHRlc3QoKSB7CiAgZG9jdW1lbnQud3JpdGUoIjxkaXY+
U2hvdWxkIGJlIDEyOjwvZGl2PjxkaXY+MSIpOwoKICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudHNC
eVRhZ05hbWUoImRpdiIpLmxlbmd0aCAhPSAyKQogICAgYWxlcnQoIkVycm9yIC0gd3JvbmcgbnVt
YmVyIG9mIERJVnMgYXQgc3RlcCAxIik7CgogIGlmIChkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFn
TmFtZSgiZGl2IilbMV0udGV4dENvbnRlbnQgIT0gIjEiKQogICAgYWxlcnQoIkVycm9yIC0gaW5j
b3JyZWN0IGRpdiBjb250ZW50IGF0IHN0ZXAgMSIpOwoKICBzZXRUaW1lb3V0KHRlc3QyLCAxMCk7
Cn0KCmZ1bmN0aW9uIHRlc3QyKCkgewogIGRvY3VtZW50LndyaXRlKCIyPC9kaXY+IikKCiAgaWYg
KGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKS5sZW5ndGggIT0gMikKICAgIGFs
ZXJ0KCJFcnJvciAtIHdyb25nIG51bWJlciBvZiBESVZzIGF0IHN0ZXAgMiIpOwoKICBpZiAoZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzFdLnRleHRDb250ZW50ICE9ICIxMiIp
CiAgICBhbGVydCgiRXJyb3IgLSBpbmNvcnJlY3QgZGl2IGNvbnRlbnQgYXQgc3RlcCAyIik7Cgog
IGRvY3VtZW50LmNsb3NlKCk7Cn0KPC9zY3JpcHQ+CjwvaGVhZD4KPGJvZHkgb25sb2FkPSJ0ZXN0
KCkiPgo8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>19076</attachid>
            <date>2008-02-11 12:39:36 -0800</date>
            <delta_ts>2010-08-13 20:21:22 -0700</delta_ts>
            <desc>This patch fixes the test cases.</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>603</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IGh0bWwvSFRNTFRva2VuaXplci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gaHRtbC9IVE1MVG9r
ZW5pemVyLmNwcAkocmV2aXNpb24gMzAxMjcpCisrKyBodG1sL0hUTUxUb2tlbml6ZXIuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xNTA1LDYgKzE1MDUsMTAgQEAgYm9vbCBIVE1MVG9rZW5pemVyOjp3
cml0ZShjb25zdCBTZWdtZW50ZQogCiAgICAgbV9zdGF0ZSA9IHN0YXRlOwogCisgICAgLy8gRmx1
c2ggcmVtYWluaW5nIHRleHQgaWYgZG9pbmcgYSBkb2N1bWVudC53cml0ZS4KKyAgICBpZiAoIWFw
cGVuZERhdGEgJiYgYnVmZmVyICYmICFtX3N0YXRlLmhhc1RhZ1N0YXRlKCkpCisgICAgICAgIHBy
b2Nlc3NUb2tlbigpOworCiAgICAgaWYgKG5vTW9yZURhdGEgJiYgIWluV3JpdGUgJiYgIXN0YXRl
LmxvYWRpbmdFeHRTY3JpcHQoKSAmJiAhbV9leGVjdXRpbmdTY3JpcHQgJiYgIW1fdGltZXIuaXNB
Y3RpdmUoKSkgewogICAgICAgICBlbmQoKTsgLy8gdGhpcyBhY3R1YWxseSBjYXVzZXMgdXMgdG8g
YmUgZGVsZXRlZAogICAgICAgICByZXR1cm4gdHJ1ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64401</attachid>
            <date>2010-08-13 20:21:27 -0700</date>
            <delta_ts>2010-08-13 20:24:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-8961-20100813202126.patch</filename>
            <type>text/plain</type>
            <size>12284</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5OWViZGI5ZmUwMjhjNTliYTg4NTA5Nzc0NzVmYjFkMGFhYWE5NDMxLi5mMzE2YmU2
NTUwMWJmZjQyNGYyYjgyMzg0ZjVlNWY5ZDNmNjZlNTNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0yLDYgKzIsMjAgQEAK
IAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAorICAgICAgICBkb2N1bWVu
dC53cml0ZSgpIGRvZXNuJ3QgZmx1c2ggcGxhaW4gdGV4dAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODk2MQorCisgICAgICAgIEFkZCB0ZXN0IGNhc2Vz
IGZvciBmbHVzaGluZyBjaGFyYWN0ZXIgdG9rZW5zLgorCisgICAgICAgICogZmFzdC90b2tlbml6
ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS1ldmlsLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1
bWVudC13cml0ZS1ldmlsLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdG9rZW5pemVyL2Zs
dXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQtd3JpdGUtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRl
Lmh0bWw6IEFkZGVkLgorCisyMDEwLTA4LTEzICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQzMDU1CiAKICAgICAgICAgVGVz
dCB2YXJpb3VzIHNjZW5hcmlvcyBpbnZvbHZpbmcgc3luY2hyb25vdXMgSmF2YVNjcmlwdCBleGVj
dXRpb24gdmlhCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXplci9mbHVzaC1j
aGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS1ldmls
LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYmYzY2NiYmUxODdkODgzYWFhMDc5ZWM1YzRhZjNk
Y2ZhMDBiMjEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIv
Zmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS1ldmlsLWV4cGVjdGVkLnR4dApAQCAt
MCwwICsxLDIgQEAKK1Nob3VsZCBiZSAxMjoKKzEyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9m
YXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwuaHRt
bCBiL0xheW91dFRlc3RzL2Zhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1l
bnQtd3JpdGUtZXZpbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFjNGZiODhmMWZjNGRkMWJlZTcyZGMzOTY2
NzQ1MGEyZjUxZTIzMzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Rva2Vu
aXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwuaHRtbApAQCAtMCww
ICsxLDM2IEBACis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKSB7CisgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgbGF5b3V0VGVz
dENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgeworICBk
b2N1bWVudC53cml0ZSgiPGRpdj5TaG91bGQgYmUgMTI6PC9kaXY+PGRpdj4xIik7CisKKyAgaWYg
KGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKS5sZW5ndGggIT0gMikKKyAgICBh
bGVydCgiRXJyb3IgLSB3cm9uZyBudW1iZXIgb2YgRElWcyBhdCBzdGVwIDEiKTsKKworICBpZiAo
ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzFdLnRleHRDb250ZW50ICE9ICIx
IikKKyAgICBhbGVydCgiRXJyb3IgLSBpbmNvcnJlY3QgZGl2IGNvbnRlbnQgYXQgc3RlcCAxIik7
CisKKyAgc2V0VGltZW91dCh0ZXN0MiwgMTApOworfQorCitmdW5jdGlvbiB0ZXN0MigpIHsKKyAg
ZG9jdW1lbnQud3JpdGUoIjI8L2Rpdj4iKQorCisgIGlmIChkb2N1bWVudC5nZXRFbGVtZW50c0J5
VGFnTmFtZSgiZGl2IikubGVuZ3RoICE9IDIpCisgICAgYWxlcnQoIkVycm9yIC0gd3JvbmcgbnVt
YmVyIG9mIERJVnMgYXQgc3RlcCAyIik7CisKKyAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRzQnlU
YWdOYW1lKCJkaXYiKVsxXS50ZXh0Q29udGVudCAhPSAiMTIiKQorICAgIGFsZXJ0KCJFcnJvciAt
IGluY29ycmVjdCBkaXYgY29udGVudCBhdCBzdGVwIDIiKTsKKworICBkb2N1bWVudC5jbG9zZSgp
OworCisgIHNldFRpbWVvdXQoImxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKSIsIDEw
KTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorPC9ib2R5
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVy
cy1pbi1kb2N1bWVudC13cml0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3Rva2Vu
aXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4wN2Q4ODBkMzhjMDI1OGNiYjUwOGEzYmJjOTZjZjk2Mzg2Nzc3MDk4Ci0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1p
bi1kb2N1bWVudC13cml0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitTaG91bGQgc2F5
IFNVQ0NFU1M6CitTVUNDRVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXpl
ci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9m
YXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLmh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYjU0ODI1MzdjOWM1MjBhOWQyZDU1NmY4ZmRlMzI1OTIwYmVkMDgwYQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMt
aW4tZG9jdW1lbnQtd3JpdGUuaHRtbApAQCAtMCwwICsxLDE2IEBACis8aGVhZD4KKzxzY3JpcHQ+
CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgp
OworfQorCitmdW5jdGlvbiB0ZXN0KCkgeworICBkb2N1bWVudC53cml0ZSgiU2hvdWxkIHNheSBT
VUNDRVNTOjxwPlNVQ0NFU1MiKTsKKworICBzZXRUaW1lb3V0KCJsYXlvdXRUZXN0Q29udHJvbGxl
ci5ub3RpZnlEb25lKCkiLCAxKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2Fk
PSJ0ZXN0KCkiPgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCBlOWY5ZWZhZWViMmVmODMzNmQ3YWM4ZWRhNzFiY2Q3Y2QxYWU0
MzMyLi5mMzQzNTRhMzYyMzUxM2U2Zjk5MmJlYzlkZTRhMTkxNjdmZTIzOTcyIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMiw2ICsyLDI3
IEBACiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCiAKKyAgICAgICAgZG9j
dW1lbnQud3JpdGUoKSBkb2Vzbid0IGZsdXNoIHBsYWluIHRleHQKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NjEKKworICAgICAgICBPcmlnaW5hbGx5
IEkgdGhvdWdodCB3ZSBzaG91bGQgYnVmZmVyIHRoZSBjaGFyYWN0ZXIgdG9rZW5zIHVudGlsIHdl
J3ZlCisgICAgICAgIHJlYWNoZWQgdGhlIGVuZCBvZiB0aGUgaW5wdXQgc3RyZWFtLCBidXQgdGhh
dCdzIG5vdyBob3cgdGhlIHNwZWMKKyAgICAgICAgaGFuZGxlcyB0aGluZ3MgKGl0IGVtaXRzIHRo
ZSBjaGFyYWN0ZXIgdG9rZW5zIG9uZS1ieS1vbmUpLgorCisgICAgICAgIFRlc3RzOiBmYXN0L3Rv
a2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwuaHRtbAorICAg
ICAgICAgICAgICAgZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13
cml0ZS5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxUb2tlbml6ZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFRva2VuaXplcjo6ZW1pdEVuZE9mRmlsZSk6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MVG9rZW5pemVyOjpuZXh0VG9rZW4pOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRva2Vu
aXplcjo6aGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4pOgorICAgICAgICAgICAgLSBSZW5hbWVk
IHRoaXMgZnVuY3Rpb24gbm93IHRoYXQgaXQncyBzaW1wbGllci4KKyAgICAgICAgKiBodG1sL0hU
TUxUb2tlbml6ZXIuaDoKKworMjAxMC0wOC0xMyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQu
b3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCiAgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MzA1NQogCiAgICAgICAgIElu
IHNvbWUgc2l0dWF0aW9ucywgdGhlIERvY3VtZW50UGFyc2VyIGNhbiBlbmQgdXAgZ2V0dGluZyBk
ZWxldGVkCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTFRva2VuaXplci5jcHAgYi9XZWJD
b3JlL2h0bWwvSFRNTFRva2VuaXplci5jcHAKaW5kZXggMmU1ZDE5MjI3MjBlMzJkNGY4MGY2YzI3
ZTQ2ZWZkZjZhM2IyY2E0Ny4uYTE4NzAxYTljMzFiZjJlYjQ0MjYzYmEyMTU2ZTJmMTVjMTc4OGQ4
MyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxUb2tlbml6ZXIuY3BwCisrKyBiL1dlYkNv
cmUvaHRtbC9IVE1MVG9rZW5pemVyLmNwcApAQCAtMTUyLDcgKzE1Miw3IEBAIGlubGluZSBib29s
IEhUTUxUb2tlbml6ZXI6OnByb2Nlc3NFbnRpdHkoU2VnbWVudGVkU3RyaW5nJiBzb3VyY2UpCiAg
ICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgICAgICAgIG1fc3RhdGUgPSBzdGF0ZU5hbWU7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIGlmICghbV9p
bnB1dFN0cmVhbVByZXByb2Nlc3Nvci5hZHZhbmNlKHNvdXJjZSwgbV9saW5lTnVtYmVyKSkgICAg
ICBcCi0gICAgICAgICAgICByZXR1cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4o
c291cmNlKTsgICAgICAgICAgICAgICBcCisgICAgICAgICAgICByZXR1cm4gaGF2ZUJ1ZmZlcmVk
Q2hhcmFjdGVyVG9rZW4oKTsgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIGNj
ID0gbV9pbnB1dFN0cmVhbVByZXByb2Nlc3Nvci5uZXh0SW5wdXRDaGFyYWN0ZXIoKTsgICAgICAg
ICAgICAgICBcCiAgICAgICAgIGdvdG8gc3RhdGVOYW1lOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfSB3aGlsZSAoZmFsc2UpCkBAIC0x
NjUsNyArMTY1LDcgQEAgaW5saW5lIGJvb2wgSFRNTFRva2VuaXplcjo6cHJvY2Vzc0VudGl0eShT
ZWdtZW50ZWRTdHJpbmcmIHNvdXJjZSkKICAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgbV9z
dGF0ZSA9IHN0YXRlTmFtZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKICAgICAgICAgaWYgKHNvdXJjZS5pc0VtcHR5KCkgfHwgIW1faW5wdXRTdHJlYW1Q
cmVwcm9jZXNzb3IucGVlayhzb3VyY2UsIG1fbGluZU51bWJlcikpIFwKLSAgICAgICAgICAgIHJl
dHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihzb3VyY2UpOyAgICAgICAgICAg
ICAgIFwKKyAgICAgICAgICAgIHJldHVybiBoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOyAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgY2MgPSBtX2lucHV0U3RyZWFtUHJl
cHJvY2Vzc29yLm5leHRJbnB1dENoYXJhY3RlcigpOyAgICAgICAgICAgICAgIFwKICAgICAgICAg
Z290byBzdGF0ZU5hbWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKICAgICB9IHdoaWxlIChmYWxzZSkKQEAgLTIwMiw3ICsyMDIsNyBAQCBib29s
IEhUTUxUb2tlbml6ZXI6OmVtaXRBbmRSZWNvbnN1bWVJbihTZWdtZW50ZWRTdHJpbmcmLCBTdGF0
ZSBzdGF0ZSkKIC8vIENoZWNrIGlmIHdlIGhhdmUgYnVmZmVyZWQgY2hhcmFjdGVycyB0byBlbWl0
IGZpcnN0IGJlZm9yZSBlbWl0dGluZyB0aGUgRU9GLgogYm9vbCBIVE1MVG9rZW5pemVyOjplbWl0
RW5kT2ZGaWxlKFNlZ21lbnRlZFN0cmluZyYgc291cmNlKQogewotICAgIGlmIChzaG91bGRFbWl0
QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihzb3VyY2UpKQorICAgIGlmIChoYXZlQnVmZmVyZWRDaGFy
YWN0ZXJUb2tlbigpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBtX3N0YXRlID0gRGF0YVN0
YXRlOwogICAgIHNvdXJjZS5hZHZhbmNlKG1fbGluZU51bWJlcik7CkBAIC0yMjksNyArMjI5LDcg
QEAgYm9vbCBIVE1MVG9rZW5pemVyOjpmbHVzaEJ1ZmZlcmVkRW5kVGFnKFNlZ21lbnRlZFN0cmlu
ZyYgc291cmNlKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBpZiAoc291cmNlLmlzRW1w
dHkoKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg
ICAgICAgICAgfHwgIW1faW5wdXRTdHJlYW1QcmVwcm9jZXNzb3IucGVlayhzb3VyY2UsIG1fbGlu
ZU51bWJlcikpICAgICAgXAotICAgICAgICAgICAgcmV0dXJuIHNob3VsZEVtaXRCdWZmZXJlZENo
YXJhY3RlclRva2VuKHNvdXJjZSk7ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgcmV0dXJu
IGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogICAgICAgICBjYyA9IG1faW5wdXRTdHJlYW1QcmVwcm9jZXNzb3IubmV4dElucHV0Q2hhcmFj
dGVyKCk7ICAgICAgICAgICAgICAgXAogICAgICAgICBnb3RvIHN0YXRlTmFtZTsgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUg
KGZhbHNlKQpAQCAtMjYwLDcgKzI2MCw3IEBAIGJvb2wgSFRNTFRva2VuaXplcjo6bmV4dFRva2Vu
KFNlZ21lbnRlZFN0cmluZyYgc291cmNlLCBIVE1MVG9rZW4mIHRva2VuKQogICAgIH0KIAogICAg
IGlmIChzb3VyY2UuaXNFbXB0eSgpIHx8ICFtX2lucHV0U3RyZWFtUHJlcHJvY2Vzc29yLnBlZWso
c291cmNlLCBtX2xpbmVOdW1iZXIpKQotICAgICAgICByZXR1cm4gc2hvdWxkRW1pdEJ1ZmZlcmVk
Q2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJh
Y3RlclRva2VuKCk7CiAgICAgVUNoYXIgY2MgPSBtX2lucHV0U3RyZWFtUHJlcHJvY2Vzc29yLm5l
eHRJbnB1dENoYXJhY3RlcigpOwogCiAgICAgLy8gaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNz
L3dlYi1hcHBzL2N1cnJlbnQtd29yay9tdWx0aXBhZ2UvdG9rZW5pemF0aW9uLmh0bWwjcGFyc2lu
Zy1tYWluLWluYm9keQpAQCAtMzA4LDcgKzMwOCw3IEBAIGJvb2wgSFRNTFRva2VuaXplcjo6bmV4
dFRva2VuKFNlZ21lbnRlZFN0cmluZyYgc291cmNlLCBIVE1MVG9rZW4mIHRva2VuKQogCiAgICAg
QkVHSU5fU1RBVEUoQ2hhcmFjdGVyUmVmZXJlbmNlSW5EYXRhU3RhdGUpIHsKICAgICAgICAgaWYg
KCFwcm9jZXNzRW50aXR5KHNvdXJjZSkpCi0gICAgICAgICAgICByZXR1cm4gc2hvdWxkRW1pdEJ1
ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAgICAgICAgICAgIHJldHVybiBoYXZlQnVm
ZmVyZWRDaGFyYWN0ZXJUb2tlbigpOwogICAgICAgICBTV0lUQ0hfVE8oRGF0YVN0YXRlKTsKICAg
ICB9CiAgICAgRU5EX1NUQVRFKCkKQEAgLTMyOSw3ICszMjksNyBAQCBib29sIEhUTUxUb2tlbml6
ZXI6Om5leHRUb2tlbihTZWdtZW50ZWRTdHJpbmcmIHNvdXJjZSwgSFRNTFRva2VuJiB0b2tlbikK
IAogICAgIEJFR0lOX1NUQVRFKENoYXJhY3RlclJlZmVyZW5jZUluUkNEQVRBU3RhdGUpIHsKICAg
ICAgICAgaWYgKCFwcm9jZXNzRW50aXR5KHNvdXJjZSkpCi0gICAgICAgICAgICByZXR1cm4gc2hv
dWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAgICAgICAgICAgIHJldHVy
biBoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOwogICAgICAgICBTV0lUQ0hfVE8oUkNEQVRB
U3RhdGUpOwogICAgIH0KICAgICBFTkRfU1RBVEUoKQpAQCAtMTAyOSw3ICsxMDI5LDcgQEAgYm9v
bCBIVE1MVG9rZW5pemVyOjpuZXh0VG9rZW4oU2VnbWVudGVkU3RyaW5nJiBzb3VyY2UsIEhUTUxU
b2tlbiYgdG9rZW4pCiAgICAgICAgIGJvb2wgbm90RW5vdWdoQ2hhcmFjdGVycyA9IGZhbHNlOwog
ICAgICAgICB1bnNpZ25lZCB2YWx1ZSA9IGNvbnN1bWVIVE1MRW50aXR5KHNvdXJjZSwgbm90RW5v
dWdoQ2hhcmFjdGVycywgbV9hZGRpdGlvbmFsQWxsb3dlZENoYXJhY3Rlcik7CiAgICAgICAgIGlm
IChub3RFbm91Z2hDaGFyYWN0ZXJzKQotICAgICAgICAgICAgcmV0dXJuIHNob3VsZEVtaXRCdWZm
ZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAgICAgICAgICByZXR1cm4gaGF2ZUJ1ZmZl
cmVkQ2hhcmFjdGVyVG9rZW4oKTsKICAgICAgICAgaWYgKCF2YWx1ZSkKICAgICAgICAgICAgIG1f
dG9rZW4tPmFwcGVuZFRvQXR0cmlidXRlVmFsdWUoJyYnKTsKICAgICAgICAgZWxzZSBpZiAodmFs
dWUgPCAweEZGRkYpCkBAIC0xMTEzLDE0ICsxMTEzLDE0IEBAIGJvb2wgSFRNTFRva2VuaXplcjo6
bmV4dFRva2VuKFNlZ21lbnRlZFN0cmluZyYgc291cmNlLCBIVE1MVG9rZW4mIHRva2VuKQogICAg
ICAgICAgICAgICAgIG1fdG9rZW4tPmJlZ2luQ29tbWVudCgpOwogICAgICAgICAgICAgICAgIFNX
SVRDSF9UTyhDb21tZW50U3RhcnRTdGF0ZSk7CiAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlc3Vs
dCA9PSBTZWdtZW50ZWRTdHJpbmc6Ok5vdEVub3VnaENoYXJhY3RlcnMpCi0gICAgICAgICAgICAg
ICAgcmV0dXJuIHNob3VsZEVtaXRCdWZmZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAg
ICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7CiAgICAgICAg
IH0gZWxzZSBpZiAoY2MgPT0gJ0QnIHx8IGNjID09ICdkJykgewogICAgICAgICAgICAgU2VnbWVu
dGVkU3RyaW5nOjpMb29rQWhlYWRSZXN1bHQgcmVzdWx0ID0gc291cmNlLmxvb2tBaGVhZElnbm9y
aW5nQ2FzZShkb2N0eXBlU3RyaW5nKTsKICAgICAgICAgICAgIGlmIChyZXN1bHQgPT0gU2VnbWVu
dGVkU3RyaW5nOjpEaWRNYXRjaCkgewogICAgICAgICAgICAgICAgIGFkdmFuY2VTdHJpbmdBbmRB
U1NFUlRJZ25vcmluZ0Nhc2Uoc291cmNlLCAiZG9jdHlwZSIpOwogICAgICAgICAgICAgICAgIFNX
SVRDSF9UTyhET0NUWVBFU3RhdGUpOwogICAgICAgICAgICAgfSBlbHNlIGlmIChyZXN1bHQgPT0g
U2VnbWVudGVkU3RyaW5nOjpOb3RFbm91Z2hDaGFyYWN0ZXJzKQotICAgICAgICAgICAgICAgIHJl
dHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihzb3VyY2UpOworICAgICAgICAg
ICAgICAgIHJldHVybiBoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOwogICAgICAgICB9CiAg
ICAgICAgIG5vdEltcGxlbWVudGVkKCk7CiAgICAgICAgIC8vIEZJWE1FOiBXZSdyZSBzdGlsbCBt
aXNzaW5nIHRoZSBiaXRzIGFib3V0IHRoZSBpbnNlcnRpb24gbW9kZSBiZWluZyBpbiBmb3JlaWdu
IGNvbnRlbnQ6CkBAIC0xMzMzLDE0ICsxMzMzLDE0IEBAIGJvb2wgSFRNTFRva2VuaXplcjo6bmV4
dFRva2VuKFNlZ21lbnRlZFN0cmluZyYgc291cmNlLCBIVE1MVG9rZW4mIHRva2VuKQogICAgICAg
ICAgICAgICAgICAgICBhZHZhbmNlU3RyaW5nQW5kQVNTRVJUSWdub3JpbmdDYXNlKHNvdXJjZSwg
InB1YmxpYyIpOwogICAgICAgICAgICAgICAgICAgICBTV0lUQ0hfVE8oQWZ0ZXJET0NUWVBFUHVi
bGljS2V5d29yZFN0YXRlKTsKICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PSBT
ZWdtZW50ZWRTdHJpbmc6Ok5vdEVub3VnaENoYXJhY3RlcnMpCi0gICAgICAgICAgICAgICAgICAg
IHJldHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihzb3VyY2UpOworICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gaGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oKTsKICAgICAg
ICAgICAgIH0gZWxzZSBpZiAoY2MgPT0gJ1MnIHx8IGNjID09ICdzJykgewogICAgICAgICAgICAg
ICAgIFNlZ21lbnRlZFN0cmluZzo6TG9va0FoZWFkUmVzdWx0IHJlc3VsdCA9IHNvdXJjZS5sb29r
QWhlYWRJZ25vcmluZ0Nhc2Uoc3lzdGVtU3RyaW5nKTsKICAgICAgICAgICAgICAgICBpZiAocmVz
dWx0ID09IFNlZ21lbnRlZFN0cmluZzo6RGlkTWF0Y2gpIHsKICAgICAgICAgICAgICAgICAgICAg
YWR2YW5jZVN0cmluZ0FuZEFTU0VSVElnbm9yaW5nQ2FzZShzb3VyY2UsICJzeXN0ZW0iKTsKICAg
ICAgICAgICAgICAgICAgICAgU1dJVENIX1RPKEFmdGVyRE9DVFlQRVN5c3RlbUtleXdvcmRTdGF0
ZSk7CiAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXN1bHQgPT0gU2VnbWVudGVkU3RyaW5n
OjpOb3RFbm91Z2hDaGFyYWN0ZXJzKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gc2hvdWxk
RW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBwYXJzZUVycm9yKCk7CiAgICAgICAgICAgICBtX3Rva2VuLT5zZXRGb3JjZVF1aXJr
cygpOwpAQCAtMTY0OSwxMCArMTY0OSw5IEBAIGlubGluZSB2b2lkIEhUTUxUb2tlbml6ZXI6OnBh
cnNlRXJyb3IoKQogICAgIG5vdEltcGxlbWVudGVkKCk7CiB9CiAKLWlubGluZSBib29sIEhUTUxU
b2tlbml6ZXI6OnNob3VsZEVtaXRCdWZmZXJlZENoYXJhY3RlclRva2VuKGNvbnN0IFNlZ21lbnRl
ZFN0cmluZyYgc291cmNlKQoraW5saW5lIGJvb2wgSFRNTFRva2VuaXplcjo6aGF2ZUJ1ZmZlcmVk
Q2hhcmFjdGVyVG9rZW4oKQogewotICAgIHJldHVybiBzb3VyY2UuaXNDbG9zZWQoKSAmJiBtX3Rv
a2VuLT50eXBlKCkgPT0gSFRNTFRva2VuOjpDaGFyYWN0ZXI7CisgICAgcmV0dXJuIG1fdG9rZW4t
PnR5cGUoKSA9PSBIVE1MVG9rZW46OkNoYXJhY3RlcjsKIH0KIAogfQotCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2h0bWwvSFRNTFRva2VuaXplci5oIGIvV2ViQ29yZS9odG1sL0hUTUxUb2tlbml6ZXIu
aAppbmRleCBjYTMxODNmOTAzNzk2MmMxNzkwMGU4ZjMwZmQ1MTAzZjg3ZGYzNmEzLi42ZmIzMDUz
YmZjMGIxZWRiMWJlZTI3MzBlYzBlYmJkZWI3ZWMxNzE3IDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0
bWwvSFRNTFRva2VuaXplci5oCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmgKQEAg
LTI1NCw3ICsyNTQsNyBAQCBwcml2YXRlOgogICAgIGlubGluZSB2b2lkIHNhdmVFbmRUYWdOYW1l
SWZOZWVkZWQoKTsKICAgICBpbmxpbmUgYm9vbCBpc0FwcHJvcHJpYXRlRW5kVGFnKCk7CiAKLSAg
ICBpbmxpbmUgYm9vbCBzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihjb25zdCBTZWdt
ZW50ZWRTdHJpbmcmKTsKKyAgICBpbmxpbmUgYm9vbCBoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tl
bigpOwogCiAgICAgU3RhdGUgbV9zdGF0ZTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64402</attachid>
            <date>2010-08-13 20:25:06 -0700</date>
            <delta_ts>2010-08-13 23:24:16 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-8961-20100813202505.patch</filename>
            <type>text/plain</type>
            <size>12282</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5OWViZGI5ZmUwMjhjNTliYTg4NTA5Nzc0NzVmYjFkMGFhYWE5NDMxLi5jNjgxZGZi
MjkxZmRkZTRiMjRmMzRhYTYyNWRhNTBiNjQzYTE5ZDYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDYgKzEsMjAgQEAK
IDIwMTAtMDgtMTMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KIAotICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlk
ZWwuCisKKyAgICAgICAgZG9jdW1lbnQud3JpdGUoKSBkb2Vzbid0IGZsdXNoIHBsYWluIHRleHQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg5NjEKKwor
ICAgICAgICBBZGQgdGVzdCBjYXNlcyBmb3IgZmx1c2hpbmcgY2hhcmFjdGVyIHRva2Vucy4KKwor
ICAgICAgICAqIGZhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQtd3Jp
dGUtZXZpbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdG9rZW5pemVyL2Zs
dXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQtd3JpdGUtZXZpbC5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV4
cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFj
dGVycy1pbi1kb2N1bWVudC13cml0ZS5odG1sOiBBZGRlZC4KKworMjAxMC0wOC0xMyAgQWRhbSBC
YXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2Vp
ZGVsLgogCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00
MzA1NQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXplci9mbHVzaC1jaGFy
YWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMv
ZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS1ldmlsLWV4
cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mYmYzY2NiYmUxODdkODgzYWFhMDc5ZWM1YzRhZjNkY2Zh
MDBiMjEyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1
c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS1ldmlsLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDIgQEAKK1Nob3VsZCBiZSAxMjoKKzEyCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwuaHRtbCBi
L0xheW91dFRlc3RzL2Zhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQt
d3JpdGUtZXZpbC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmFjNGZiODhmMWZjNGRkMWJlZTcyZGMzOTY2NzQ1
MGEyZjUxZTIzMzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXpl
ci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwuaHRtbApAQCAtMCwwICsx
LDM2IEBACis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVy
KSB7CisgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgbGF5b3V0VGVzdENv
bnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgeworICBkb2N1
bWVudC53cml0ZSgiPGRpdj5TaG91bGQgYmUgMTI6PC9kaXY+PGRpdj4xIik7CisKKyAgaWYgKGRv
Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKS5sZW5ndGggIT0gMikKKyAgICBhbGVy
dCgiRXJyb3IgLSB3cm9uZyBudW1iZXIgb2YgRElWcyBhdCBzdGVwIDEiKTsKKworICBpZiAoZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImRpdiIpWzFdLnRleHRDb250ZW50ICE9ICIxIikK
KyAgICBhbGVydCgiRXJyb3IgLSBpbmNvcnJlY3QgZGl2IGNvbnRlbnQgYXQgc3RlcCAxIik7CisK
KyAgc2V0VGltZW91dCh0ZXN0MiwgMTApOworfQorCitmdW5jdGlvbiB0ZXN0MigpIHsKKyAgZG9j
dW1lbnQud3JpdGUoIjI8L2Rpdj4iKQorCisgIGlmIChkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFn
TmFtZSgiZGl2IikubGVuZ3RoICE9IDIpCisgICAgYWxlcnQoIkVycm9yIC0gd3JvbmcgbnVtYmVy
IG9mIERJVnMgYXQgc3RlcCAyIik7CisKKyAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCJkaXYiKVsxXS50ZXh0Q29udGVudCAhPSAiMTIiKQorICAgIGFsZXJ0KCJFcnJvciAtIGlu
Y29ycmVjdCBkaXYgY29udGVudCBhdCBzdGVwIDIiKTsKKworICBkb2N1bWVudC5jbG9zZSgpOwor
CisgIHNldFRpbWVvdXQoImxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKSIsIDEwKTsK
K30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorPC9ib2R5Pgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1p
bi1kb2N1bWVudC13cml0ZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXpl
ci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV4cGVjdGVkLnR4dApuZXcgZmls
ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwLi4wN2Q4ODBkMzhjMDI1OGNiYjUwOGEzYmJjOTZjZjk2Mzg2Nzc3MDk4Ci0tLSAvZGV2L251
bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1k
b2N1bWVudC13cml0ZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwyIEBACitTaG91bGQgc2F5IFNV
Q0NFU1M6CitTVUNDRVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXplci9m
bHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLmh0bWwKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYjU0ODI1MzdjOWM1MjBhOWQyZDU1NmY4ZmRlMzI1OTIwYmVkMDgwYQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4t
ZG9jdW1lbnQtd3JpdGUuaHRtbApAQCAtMCwwICsxLDE2IEBACis8aGVhZD4KKzxzY3JpcHQ+Citp
ZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgIGxheW91dFRlc3RDb250cm9sbGVy
LmR1bXBBc1RleHQoKTsKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwor
fQorCitmdW5jdGlvbiB0ZXN0KCkgeworICBkb2N1bWVudC53cml0ZSgiU2hvdWxkIHNheSBTVUND
RVNTOjxwPlNVQ0NFU1MiKTsKKworICBzZXRUaW1lb3V0KCJsYXlvdXRUZXN0Q29udHJvbGxlci5u
b3RpZnlEb25lKCkiLCAxKTsKK30KKzwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHkgb25sb2FkPSJ0
ZXN0KCkiPgorPC9ib2R5PgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCBlOWY5ZWZhZWViMmVmODMzNmQ3YWM4ZWRhNzFiY2Q3Y2QxYWU0MzMy
Li5lZGFjM2FlYjFjN2FkNDY2MjE4ZmI5MmI1MjliMDE5MTYzMGVkNGVjIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw2ICsxLDI3IEBA
CiAyMDEwLTA4LTEzICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKLSAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2Vp
ZGVsLgorCisgICAgICAgIGRvY3VtZW50LndyaXRlKCkgZG9lc24ndCBmbHVzaCBwbGFpbiB0ZXh0
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04OTYxCisK
KyAgICAgICAgT3JpZ2luYWxseSBJIHRob3VnaHQgd2Ugc2hvdWxkIGJ1ZmZlciB0aGUgY2hhcmFj
dGVyIHRva2VucyB1bnRpbCB3ZSd2ZQorICAgICAgICByZWFjaGVkIHRoZSBlbmQgb2YgdGhlIGlu
cHV0IHN0cmVhbSwgYnV0IHRoYXQncyBub3QgaG93IHRoZSBzcGVjCisgICAgICAgIGhhbmRsZXMg
dGhpbmdzIChpdCBlbWl0cyB0aGUgY2hhcmFjdGVyIHRva2VucyBvbmUtYnktb25lKS4KKworICAg
ICAgICBUZXN0czogZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13
cml0ZS1ldmlsLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJh
Y3RlcnMtaW4tZG9jdW1lbnQtd3JpdGUuaHRtbAorCisgICAgICAgICogaHRtbC9IVE1MVG9rZW5p
emVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OmVtaXRFbmRPZkZpbGUp
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRva2VuaXplcjo6bmV4dFRva2VuKToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OmhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKToKKyAg
ICAgICAgICAgIC0gUmVuYW1lZCB0aGlzIGZ1bmN0aW9uIG5vdyB0aGF0IGl0J3Mgc2ltcGxpZXIu
CisgICAgICAgICogaHRtbC9IVE1MVG9rZW5pemVyLmg6CisKKzIwMTAtMDgtMTMgIEFkYW0gQmFy
dGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRl
bC4KIAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDMw
NTUKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxUb2tlbml6ZXIuY3BwIGIvV2ViQ29y
ZS9odG1sL0hUTUxUb2tlbml6ZXIuY3BwCmluZGV4IDJlNWQxOTIyNzIwZTMyZDRmODBmNmMyN2U0
NmVmZGY2YTNiMmNhNDcuLmExODcwMWE5YzMxYmYyZWI0NDI2M2JhMjE1NmUyZjE1YzE3ODhkODMg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmNwcAorKysgYi9XZWJDb3Jl
L2h0bWwvSFRNTFRva2VuaXplci5jcHAKQEAgLTE1Miw3ICsxNTIsNyBAQCBpbmxpbmUgYm9vbCBI
VE1MVG9rZW5pemVyOjpwcm9jZXNzRW50aXR5KFNlZ21lbnRlZFN0cmluZyYgc291cmNlKQogICAg
IGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAogICAgICAgICBtX3N0YXRlID0gc3RhdGVOYW1lOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBpZiAoIW1faW5w
dXRTdHJlYW1QcmVwcm9jZXNzb3IuYWR2YW5jZShzb3VyY2UsIG1fbGluZU51bWJlcikpICAgICAg
XAotICAgICAgICAgICAgcmV0dXJuIHNob3VsZEVtaXRCdWZmZXJlZENoYXJhY3RlclRva2VuKHNv
dXJjZSk7ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENo
YXJhY3RlclRva2VuKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBjYyA9
IG1faW5wdXRTdHJlYW1QcmVwcm9jZXNzb3IubmV4dElucHV0Q2hhcmFjdGVyKCk7ICAgICAgICAg
ICAgICAgXAogICAgICAgICBnb3RvIHN0YXRlTmFtZTsgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUgKGZhbHNlKQpAQCAtMTY1
LDcgKzE2NSw3IEBAIGlubGluZSBib29sIEhUTUxUb2tlbml6ZXI6OnByb2Nlc3NFbnRpdHkoU2Vn
bWVudGVkU3RyaW5nJiBzb3VyY2UpCiAgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIG1fc3Rh
dGUgPSBzdGF0ZU5hbWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCiAgICAgICAgIGlmIChzb3VyY2UuaXNFbXB0eSgpIHx8ICFtX2lucHV0U3RyZWFtUHJl
cHJvY2Vzc29yLnBlZWsoc291cmNlLCBtX2xpbmVOdW1iZXIpKSBcCi0gICAgICAgICAgICByZXR1
cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICByZXR1cm4gaGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oKTsgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIGNjID0gbV9pbnB1dFN0cmVhbVByZXBy
b2Nlc3Nvci5uZXh0SW5wdXRDaGFyYWN0ZXIoKTsgICAgICAgICAgICAgICBcCiAgICAgICAgIGdv
dG8gc3RhdGVOYW1lOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBcCiAgICAgfSB3aGlsZSAoZmFsc2UpCkBAIC0yMDIsNyArMjAyLDcgQEAgYm9vbCBI
VE1MVG9rZW5pemVyOjplbWl0QW5kUmVjb25zdW1lSW4oU2VnbWVudGVkU3RyaW5nJiwgU3RhdGUg
c3RhdGUpCiAvLyBDaGVjayBpZiB3ZSBoYXZlIGJ1ZmZlcmVkIGNoYXJhY3RlcnMgdG8gZW1pdCBm
aXJzdCBiZWZvcmUgZW1pdHRpbmcgdGhlIEVPRi4KIGJvb2wgSFRNTFRva2VuaXplcjo6ZW1pdEVu
ZE9mRmlsZShTZWdtZW50ZWRTdHJpbmcmIHNvdXJjZSkKIHsKLSAgICBpZiAoc2hvdWxkRW1pdEJ1
ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKSkKKyAgICBpZiAoaGF2ZUJ1ZmZlcmVkQ2hhcmFj
dGVyVG9rZW4oKSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgbV9zdGF0ZSA9IERhdGFTdGF0
ZTsKICAgICBzb3VyY2UuYWR2YW5jZShtX2xpbmVOdW1iZXIpOwpAQCAtMjI5LDcgKzIyOSw3IEBA
IGJvb2wgSFRNTFRva2VuaXplcjo6Zmx1c2hCdWZmZXJlZEVuZFRhZyhTZWdtZW50ZWRTdHJpbmcm
IHNvdXJjZSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgaWYgKHNvdXJjZS5pc0VtcHR5
KCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAg
ICAgICAgIHx8ICFtX2lucHV0U3RyZWFtUHJlcHJvY2Vzc29yLnBlZWsoc291cmNlLCBtX2xpbmVO
dW1iZXIpKSAgICAgIFwKLSAgICAgICAgICAgIHJldHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFy
YWN0ZXJUb2tlbihzb3VyY2UpOyAgICAgICAgICAgICAgIFwKKyAgICAgICAgICAgIHJldHVybiBo
YXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
ICAgICAgICAgY2MgPSBtX2lucHV0U3RyZWFtUHJlcHJvY2Vzc29yLm5leHRJbnB1dENoYXJhY3Rl
cigpOyAgICAgICAgICAgICAgIFwKICAgICAgICAgZ290byBzdGF0ZU5hbWU7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICB9IHdoaWxlIChm
YWxzZSkKQEAgLTI2MCw3ICsyNjAsNyBAQCBib29sIEhUTUxUb2tlbml6ZXI6Om5leHRUb2tlbihT
ZWdtZW50ZWRTdHJpbmcmIHNvdXJjZSwgSFRNTFRva2VuJiB0b2tlbikKICAgICB9CiAKICAgICBp
ZiAoc291cmNlLmlzRW1wdHkoKSB8fCAhbV9pbnB1dFN0cmVhbVByZXByb2Nlc3Nvci5wZWVrKHNv
dXJjZSwgbV9saW5lTnVtYmVyKSkKLSAgICAgICAgcmV0dXJuIHNob3VsZEVtaXRCdWZmZXJlZENo
YXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAgICAgIHJldHVybiBoYXZlQnVmZmVyZWRDaGFyYWN0
ZXJUb2tlbigpOwogICAgIFVDaGFyIGNjID0gbV9pbnB1dFN0cmVhbVByZXByb2Nlc3Nvci5uZXh0
SW5wdXRDaGFyYWN0ZXIoKTsKIAogICAgIC8vIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93
ZWItYXBwcy9jdXJyZW50LXdvcmsvbXVsdGlwYWdlL3Rva2VuaXphdGlvbi5odG1sI3BhcnNpbmct
bWFpbi1pbmJvZHkKQEAgLTMwOCw3ICszMDgsNyBAQCBib29sIEhUTUxUb2tlbml6ZXI6Om5leHRU
b2tlbihTZWdtZW50ZWRTdHJpbmcmIHNvdXJjZSwgSFRNTFRva2VuJiB0b2tlbikKIAogICAgIEJF
R0lOX1NUQVRFKENoYXJhY3RlclJlZmVyZW5jZUluRGF0YVN0YXRlKSB7CiAgICAgICAgIGlmICgh
cHJvY2Vzc0VudGl0eShzb3VyY2UpKQotICAgICAgICAgICAgcmV0dXJuIHNob3VsZEVtaXRCdWZm
ZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAgICAgICAgICByZXR1cm4gaGF2ZUJ1ZmZl
cmVkQ2hhcmFjdGVyVG9rZW4oKTsKICAgICAgICAgU1dJVENIX1RPKERhdGFTdGF0ZSk7CiAgICAg
fQogICAgIEVORF9TVEFURSgpCkBAIC0zMjksNyArMzI5LDcgQEAgYm9vbCBIVE1MVG9rZW5pemVy
OjpuZXh0VG9rZW4oU2VnbWVudGVkU3RyaW5nJiBzb3VyY2UsIEhUTUxUb2tlbiYgdG9rZW4pCiAK
ICAgICBCRUdJTl9TVEFURShDaGFyYWN0ZXJSZWZlcmVuY2VJblJDREFUQVN0YXRlKSB7CiAgICAg
ICAgIGlmICghcHJvY2Vzc0VudGl0eShzb3VyY2UpKQotICAgICAgICAgICAgcmV0dXJuIHNob3Vs
ZEVtaXRCdWZmZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAgICAgICAgICByZXR1cm4g
aGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oKTsKICAgICAgICAgU1dJVENIX1RPKFJDREFUQVN0
YXRlKTsKICAgICB9CiAgICAgRU5EX1NUQVRFKCkKQEAgLTEwMjksNyArMTAyOSw3IEBAIGJvb2wg
SFRNTFRva2VuaXplcjo6bmV4dFRva2VuKFNlZ21lbnRlZFN0cmluZyYgc291cmNlLCBIVE1MVG9r
ZW4mIHRva2VuKQogICAgICAgICBib29sIG5vdEVub3VnaENoYXJhY3RlcnMgPSBmYWxzZTsKICAg
ICAgICAgdW5zaWduZWQgdmFsdWUgPSBjb25zdW1lSFRNTEVudGl0eShzb3VyY2UsIG5vdEVub3Vn
aENoYXJhY3RlcnMsIG1fYWRkaXRpb25hbEFsbG93ZWRDaGFyYWN0ZXIpOwogICAgICAgICBpZiAo
bm90RW5vdWdoQ2hhcmFjdGVycykKLSAgICAgICAgICAgIHJldHVybiBzaG91bGRFbWl0QnVmZmVy
ZWRDaGFyYWN0ZXJUb2tlbihzb3VyY2UpOworICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJl
ZENoYXJhY3RlclRva2VuKCk7CiAgICAgICAgIGlmICghdmFsdWUpCiAgICAgICAgICAgICBtX3Rv
a2VuLT5hcHBlbmRUb0F0dHJpYnV0ZVZhbHVlKCcmJyk7CiAgICAgICAgIGVsc2UgaWYgKHZhbHVl
IDwgMHhGRkZGKQpAQCAtMTExMywxNCArMTExMywxNCBAQCBib29sIEhUTUxUb2tlbml6ZXI6Om5l
eHRUb2tlbihTZWdtZW50ZWRTdHJpbmcmIHNvdXJjZSwgSFRNTFRva2VuJiB0b2tlbikKICAgICAg
ICAgICAgICAgICBtX3Rva2VuLT5iZWdpbkNvbW1lbnQoKTsKICAgICAgICAgICAgICAgICBTV0lU
Q0hfVE8oQ29tbWVudFN0YXJ0U3RhdGUpOwogICAgICAgICAgICAgfSBlbHNlIGlmIChyZXN1bHQg
PT0gU2VnbWVudGVkU3RyaW5nOjpOb3RFbm91Z2hDaGFyYWN0ZXJzKQotICAgICAgICAgICAgICAg
IHJldHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihzb3VyY2UpOworICAgICAg
ICAgICAgICAgIHJldHVybiBoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOwogICAgICAgICB9
IGVsc2UgaWYgKGNjID09ICdEJyB8fCBjYyA9PSAnZCcpIHsKICAgICAgICAgICAgIFNlZ21lbnRl
ZFN0cmluZzo6TG9va0FoZWFkUmVzdWx0IHJlc3VsdCA9IHNvdXJjZS5sb29rQWhlYWRJZ25vcmlu
Z0Nhc2UoZG9jdHlwZVN0cmluZyk7CiAgICAgICAgICAgICBpZiAocmVzdWx0ID09IFNlZ21lbnRl
ZFN0cmluZzo6RGlkTWF0Y2gpIHsKICAgICAgICAgICAgICAgICBhZHZhbmNlU3RyaW5nQW5kQVNT
RVJUSWdub3JpbmdDYXNlKHNvdXJjZSwgImRvY3R5cGUiKTsKICAgICAgICAgICAgICAgICBTV0lU
Q0hfVE8oRE9DVFlQRVN0YXRlKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzdWx0ID09IFNl
Z21lbnRlZFN0cmluZzo6Tm90RW5vdWdoQ2hhcmFjdGVycykKLSAgICAgICAgICAgICAgICByZXR1
cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAgICAgICAgICAg
ICAgICByZXR1cm4gaGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oKTsKICAgICAgICAgfQogICAg
ICAgICBub3RJbXBsZW1lbnRlZCgpOwogICAgICAgICAvLyBGSVhNRTogV2UncmUgc3RpbGwgbWlz
c2luZyB0aGUgYml0cyBhYm91dCB0aGUgaW5zZXJ0aW9uIG1vZGUgYmVpbmcgaW4gZm9yZWlnbiBj
b250ZW50OgpAQCAtMTMzMywxNCArMTMzMywxNCBAQCBib29sIEhUTUxUb2tlbml6ZXI6Om5leHRU
b2tlbihTZWdtZW50ZWRTdHJpbmcmIHNvdXJjZSwgSFRNTFRva2VuJiB0b2tlbikKICAgICAgICAg
ICAgICAgICAgICAgYWR2YW5jZVN0cmluZ0FuZEFTU0VSVElnbm9yaW5nQ2FzZShzb3VyY2UsICJw
dWJsaWMiKTsKICAgICAgICAgICAgICAgICAgICAgU1dJVENIX1RPKEFmdGVyRE9DVFlQRVB1Ymxp
Y0tleXdvcmRTdGF0ZSk7CiAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyZXN1bHQgPT0gU2Vn
bWVudGVkU3RyaW5nOjpOb3RFbm91Z2hDaGFyYWN0ZXJzKQotICAgICAgICAgICAgICAgICAgICBy
ZXR1cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7CiAgICAgICAg
ICAgICB9IGVsc2UgaWYgKGNjID09ICdTJyB8fCBjYyA9PSAncycpIHsKICAgICAgICAgICAgICAg
ICBTZWdtZW50ZWRTdHJpbmc6Okxvb2tBaGVhZFJlc3VsdCByZXN1bHQgPSBzb3VyY2UubG9va0Fo
ZWFkSWdub3JpbmdDYXNlKHN5c3RlbVN0cmluZyk7CiAgICAgICAgICAgICAgICAgaWYgKHJlc3Vs
dCA9PSBTZWdtZW50ZWRTdHJpbmc6OkRpZE1hdGNoKSB7CiAgICAgICAgICAgICAgICAgICAgIGFk
dmFuY2VTdHJpbmdBbmRBU1NFUlRJZ25vcmluZ0Nhc2Uoc291cmNlLCAic3lzdGVtIik7CiAgICAg
ICAgICAgICAgICAgICAgIFNXSVRDSF9UTyhBZnRlckRPQ1RZUEVTeXN0ZW1LZXl3b3JkU3RhdGUp
OwogICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzdWx0ID09IFNlZ21lbnRlZFN0cmluZzo6
Tm90RW5vdWdoQ2hhcmFjdGVycykKLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNob3VsZEVt
aXRCdWZmZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAgICAgICAgICAgICAgICAgIHJl
dHVybiBoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOwogICAgICAgICAgICAgfQogICAgICAg
ICAgICAgcGFyc2VFcnJvcigpOwogICAgICAgICAgICAgbV90b2tlbi0+c2V0Rm9yY2VRdWlya3Mo
KTsKQEAgLTE2NDksMTAgKzE2NDksOSBAQCBpbmxpbmUgdm9pZCBIVE1MVG9rZW5pemVyOjpwYXJz
ZUVycm9yKCkKICAgICBub3RJbXBsZW1lbnRlZCgpOwogfQogCi1pbmxpbmUgYm9vbCBIVE1MVG9r
ZW5pemVyOjpzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihjb25zdCBTZWdtZW50ZWRT
dHJpbmcmIHNvdXJjZSkKK2lubGluZSBib29sIEhUTUxUb2tlbml6ZXI6OmhhdmVCdWZmZXJlZENo
YXJhY3RlclRva2VuKCkKIHsKLSAgICByZXR1cm4gc291cmNlLmlzQ2xvc2VkKCkgJiYgbV90b2tl
bi0+dHlwZSgpID09IEhUTUxUb2tlbjo6Q2hhcmFjdGVyOworICAgIHJldHVybiBtX3Rva2VuLT50
eXBlKCkgPT0gSFRNTFRva2VuOjpDaGFyYWN0ZXI7CiB9CiAKIH0KLQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9odG1sL0hUTUxUb2tlbml6ZXIuaCBiL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmgK
aW5kZXggY2EzMTgzZjkwMzc5NjJjMTc5MDBlOGYzMGZkNTEwM2Y4N2RmMzZhMy4uNmZiMzA1M2Jm
YzBiMWVkYjFiZWUyNzMwZWMwZWJiZGViN2VjMTcxNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1s
L0hUTUxUb2tlbml6ZXIuaAorKysgYi9XZWJDb3JlL2h0bWwvSFRNTFRva2VuaXplci5oCkBAIC0y
NTQsNyArMjU0LDcgQEAgcHJpdmF0ZToKICAgICBpbmxpbmUgdm9pZCBzYXZlRW5kVGFnTmFtZUlm
TmVlZGVkKCk7CiAgICAgaW5saW5lIGJvb2wgaXNBcHByb3ByaWF0ZUVuZFRhZygpOwogCi0gICAg
aW5saW5lIGJvb2wgc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oY29uc3QgU2VnbWVu
dGVkU3RyaW5nJik7CisgICAgaW5saW5lIGJvb2wgaGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4o
KTsKIAogICAgIFN0YXRlIG1fc3RhdGU7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>64409</attachid>
            <date>2010-08-13 23:24:30 -0700</date>
            <delta_ts>2010-08-15 12:43:41 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-8961-20100813232428.patch</filename>
            <type>text/plain</type>
            <size>11612</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2NTM1NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMDgtMTMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9y
Zz4KKworICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KKworICAgICAgICBkb2N1bWVu
dC53cml0ZSgpIGRvZXNuJ3QgZmx1c2ggcGxhaW4gdGV4dAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODk2MQorCisgICAgICAgIE9yaWdpbmFsbHkgSSB0
aG91Z2h0IHdlIHNob3VsZCBidWZmZXIgdGhlIGNoYXJhY3RlciB0b2tlbnMgdW50aWwgd2UndmUK
KyAgICAgICAgcmVhY2hlZCB0aGUgZW5kIG9mIHRoZSBpbnB1dCBzdHJlYW0sIGJ1dCB0aGF0J3Mg
bm90IGhvdyB0aGUgc3BlYworICAgICAgICBoYW5kbGVzIHRoaW5ncyAoaXQgZW1pdHMgdGhlIGNo
YXJhY3RlciB0b2tlbnMgb25lLWJ5LW9uZSkuCisKKyAgICAgICAgVGVzdHM6IGZhc3QvdG9rZW5p
emVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQtd3JpdGUtZXZpbC5odG1sCisgICAgICAg
ICAgICAgICBmYXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRl
Lmh0bWwKKworICAgICAgICAqIGh0bWwvSFRNTFRva2VuaXplci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MVG9rZW5pemVyOjplbWl0RW5kT2ZGaWxlKToKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxUb2tlbml6ZXI6Om5leHRUb2tlbik6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVG9rZW5pemVy
OjpoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbik6CisgICAgICAgICAgICAtIFJlbmFtZWQgdGhp
cyBmdW5jdGlvbiBub3cgdGhhdCBpdCdzIHNpbXBsaWVyLgorICAgICAgICAqIGh0bWwvSFRNTFRv
a2VuaXplci5oOgorCiAyMDEwLTA4LTEzICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+
CiAKICAgICAgICAgRml4IEFTU0VSVCBpbiBYTUwgZW50aXR5IHBhcnNpbmcuICBZb3UgY2FuJ3Qg
YWR2YW5jZSB0aGUgZW50aXR5IHNlYXJjaApJbmRleDogV2ViQ29yZS9odG1sL0hUTUxUb2tlbml6
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmNwcAkocmV2
aXNpb24gNjUzNTMpCisrKyBXZWJDb3JlL2h0bWwvSFRNTFRva2VuaXplci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTE1Miw3ICsxNTIsNyBAQCBpbmxpbmUgYm9vbCBIVE1MVG9rZW5pemVyOjpwcm9j
ZXNzRW50aXR5CiAgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgIG1fc3RhdGUgPSBzdGF0ZU5h
bWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAg
ICAgIGlmICghbV9pbnB1dFN0cmVhbVByZXByb2Nlc3Nvci5hZHZhbmNlKHNvdXJjZSwgbV9saW5l
TnVtYmVyKSkgICAgICBcCi0gICAgICAgICAgICByZXR1cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hh
cmFjdGVyVG9rZW4oc291cmNlKTsgICAgICAgICAgICAgICBcCisgICAgICAgICAgICByZXR1cm4g
aGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oKTsgICAgICAgICAgICAgICAgICAgICAgICAgICBc
CiAgICAgICAgIGNjID0gbV9pbnB1dFN0cmVhbVByZXByb2Nlc3Nvci5uZXh0SW5wdXRDaGFyYWN0
ZXIoKTsgICAgICAgICAgICAgICBcCiAgICAgICAgIGdvdG8gc3RhdGVOYW1lOyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgfSB3aGlsZSAo
ZmFsc2UpCkBAIC0xNjUsNyArMTY1LDcgQEAgaW5saW5lIGJvb2wgSFRNTFRva2VuaXplcjo6cHJv
Y2Vzc0VudGl0eQogICAgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBtX3N0YXRlID0gc3RhdGVO
YW1lOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg
ICAgICBpZiAoc291cmNlLmlzRW1wdHkoKSB8fCAhbV9pbnB1dFN0cmVhbVByZXByb2Nlc3Nvci5w
ZWVrKHNvdXJjZSwgbV9saW5lTnVtYmVyKSkgXAotICAgICAgICAgICAgcmV0dXJuIHNob3VsZEVt
aXRCdWZmZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7ICAgICAgICAgICAgICAgXAorICAgICAg
ICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAogICAgICAgICBjYyA9IG1faW5wdXRTdHJlYW1QcmVwcm9jZXNzb3IubmV4
dElucHV0Q2hhcmFjdGVyKCk7ICAgICAgICAgICAgICAgXAogICAgICAgICBnb3RvIHN0YXRlTmFt
ZTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAog
ICAgIH0gd2hpbGUgKGZhbHNlKQpAQCAtMjAyLDcgKzIwMiw3IEBAIGJvb2wgSFRNTFRva2VuaXpl
cjo6ZW1pdEFuZFJlY29uc3VtZUluKFMKIC8vIENoZWNrIGlmIHdlIGhhdmUgYnVmZmVyZWQgY2hh
cmFjdGVycyB0byBlbWl0IGZpcnN0IGJlZm9yZSBlbWl0dGluZyB0aGUgRU9GLgogYm9vbCBIVE1M
VG9rZW5pemVyOjplbWl0RW5kT2ZGaWxlKFNlZ21lbnRlZFN0cmluZyYgc291cmNlKQogewotICAg
IGlmIChzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihzb3VyY2UpKQorICAgIGlmICho
YXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBt
X3N0YXRlID0gRGF0YVN0YXRlOwogICAgIHNvdXJjZS5hZHZhbmNlKG1fbGluZU51bWJlcik7CkBA
IC0yMjksNyArMjI5LDcgQEAgYm9vbCBIVE1MVG9rZW5pemVyOjpmbHVzaEJ1ZmZlcmVkRW5kVGFn
KAogICAgICAgICAgICAgcmV0dXJuIHRydWU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBpZiAoc291cmNlLmlzRW1wdHkoKSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAg
fHwgIW1faW5wdXRTdHJlYW1QcmVwcm9jZXNzb3IucGVlayhzb3VyY2UsIG1fbGluZU51bWJlcikp
ICAgICAgXAotICAgICAgICAgICAgcmV0dXJuIHNob3VsZEVtaXRCdWZmZXJlZENoYXJhY3RlclRv
a2VuKHNvdXJjZSk7ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZm
ZXJlZENoYXJhY3RlclRva2VuKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAg
ICBjYyA9IG1faW5wdXRTdHJlYW1QcmVwcm9jZXNzb3IubmV4dElucHV0Q2hhcmFjdGVyKCk7ICAg
ICAgICAgICAgICAgXAogICAgICAgICBnb3RvIHN0YXRlTmFtZTsgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0gd2hpbGUgKGZhbHNlKQpA
QCAtMjYwLDcgKzI2MCw3IEBAIGJvb2wgSFRNTFRva2VuaXplcjo6bmV4dFRva2VuKFNlZ21lbnRl
ZFMKICAgICB9CiAKICAgICBpZiAoc291cmNlLmlzRW1wdHkoKSB8fCAhbV9pbnB1dFN0cmVhbVBy
ZXByb2Nlc3Nvci5wZWVrKHNvdXJjZSwgbV9saW5lTnVtYmVyKSkKLSAgICAgICAgcmV0dXJuIHNo
b3VsZEVtaXRCdWZmZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAgICAgIHJldHVybiBo
YXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOwogICAgIFVDaGFyIGNjID0gbV9pbnB1dFN0cmVh
bVByZXByb2Nlc3Nvci5uZXh0SW5wdXRDaGFyYWN0ZXIoKTsKIAogICAgIC8vIGh0dHA6Ly93d3cu
d2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJyZW50LXdvcmsvbXVsdGlwYWdlL3Rva2VuaXph
dGlvbi5odG1sI3BhcnNpbmctbWFpbi1pbmJvZHkKQEAgLTMwOCw3ICszMDgsNyBAQCBib29sIEhU
TUxUb2tlbml6ZXI6Om5leHRUb2tlbihTZWdtZW50ZWRTCiAKICAgICBCRUdJTl9TVEFURShDaGFy
YWN0ZXJSZWZlcmVuY2VJbkRhdGFTdGF0ZSkgewogICAgICAgICBpZiAoIXByb2Nlc3NFbnRpdHko
c291cmNlKSkKLSAgICAgICAgICAgIHJldHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJU
b2tlbihzb3VyY2UpOworICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRv
a2VuKCk7CiAgICAgICAgIFNXSVRDSF9UTyhEYXRhU3RhdGUpOwogICAgIH0KICAgICBFTkRfU1RB
VEUoKQpAQCAtMzI5LDcgKzMyOSw3IEBAIGJvb2wgSFRNTFRva2VuaXplcjo6bmV4dFRva2VuKFNl
Z21lbnRlZFMKIAogICAgIEJFR0lOX1NUQVRFKENoYXJhY3RlclJlZmVyZW5jZUluUkNEQVRBU3Rh
dGUpIHsKICAgICAgICAgaWYgKCFwcm9jZXNzRW50aXR5KHNvdXJjZSkpCi0gICAgICAgICAgICBy
ZXR1cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAgICAgICAg
ICAgIHJldHVybiBoYXZlQnVmZmVyZWRDaGFyYWN0ZXJUb2tlbigpOwogICAgICAgICBTV0lUQ0hf
VE8oUkNEQVRBU3RhdGUpOwogICAgIH0KICAgICBFTkRfU1RBVEUoKQpAQCAtMTAyOSw3ICsxMDI5
LDcgQEAgYm9vbCBIVE1MVG9rZW5pemVyOjpuZXh0VG9rZW4oU2VnbWVudGVkUwogICAgICAgICBi
b29sIG5vdEVub3VnaENoYXJhY3RlcnMgPSBmYWxzZTsKICAgICAgICAgdW5zaWduZWQgdmFsdWUg
PSBjb25zdW1lSFRNTEVudGl0eShzb3VyY2UsIG5vdEVub3VnaENoYXJhY3RlcnMsIG1fYWRkaXRp
b25hbEFsbG93ZWRDaGFyYWN0ZXIpOwogICAgICAgICBpZiAobm90RW5vdWdoQ2hhcmFjdGVycykK
LSAgICAgICAgICAgIHJldHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFyYWN0ZXJUb2tlbihzb3Vy
Y2UpOworICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7CiAg
ICAgICAgIGlmICghdmFsdWUpCiAgICAgICAgICAgICBtX3Rva2VuLT5hcHBlbmRUb0F0dHJpYnV0
ZVZhbHVlKCcmJyk7CiAgICAgICAgIGVsc2UgaWYgKHZhbHVlIDwgMHhGRkZGKQpAQCAtMTExMywx
NCArMTExMywxNCBAQCBib29sIEhUTUxUb2tlbml6ZXI6Om5leHRUb2tlbihTZWdtZW50ZWRTCiAg
ICAgICAgICAgICAgICAgbV90b2tlbi0+YmVnaW5Db21tZW50KCk7CiAgICAgICAgICAgICAgICAg
U1dJVENIX1RPKENvbW1lbnRTdGFydFN0YXRlKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAocmVz
dWx0ID09IFNlZ21lbnRlZFN0cmluZzo6Tm90RW5vdWdoQ2hhcmFjdGVycykKLSAgICAgICAgICAg
ICAgICByZXR1cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291cmNlKTsKKyAg
ICAgICAgICAgICAgICByZXR1cm4gaGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oKTsKICAgICAg
ICAgfSBlbHNlIGlmIChjYyA9PSAnRCcgfHwgY2MgPT0gJ2QnKSB7CiAgICAgICAgICAgICBTZWdt
ZW50ZWRTdHJpbmc6Okxvb2tBaGVhZFJlc3VsdCByZXN1bHQgPSBzb3VyY2UubG9va0FoZWFkSWdu
b3JpbmdDYXNlKGRvY3R5cGVTdHJpbmcpOwogICAgICAgICAgICAgaWYgKHJlc3VsdCA9PSBTZWdt
ZW50ZWRTdHJpbmc6OkRpZE1hdGNoKSB7CiAgICAgICAgICAgICAgICAgYWR2YW5jZVN0cmluZ0Fu
ZEFTU0VSVElnbm9yaW5nQ2FzZShzb3VyY2UsICJkb2N0eXBlIik7CiAgICAgICAgICAgICAgICAg
U1dJVENIX1RPKERPQ1RZUEVTdGF0ZSk7CiAgICAgICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9
PSBTZWdtZW50ZWRTdHJpbmc6Ok5vdEVub3VnaENoYXJhY3RlcnMpCi0gICAgICAgICAgICAgICAg
cmV0dXJuIHNob3VsZEVtaXRCdWZmZXJlZENoYXJhY3RlclRva2VuKHNvdXJjZSk7CisgICAgICAg
ICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7CiAgICAgICAgIH0K
ICAgICAgICAgbm90SW1wbGVtZW50ZWQoKTsKICAgICAgICAgLy8gRklYTUU6IFdlJ3JlIHN0aWxs
IG1pc3NpbmcgdGhlIGJpdHMgYWJvdXQgdGhlIGluc2VydGlvbiBtb2RlIGJlaW5nIGluIGZvcmVp
Z24gY29udGVudDoKQEAgLTEzMzMsMTQgKzEzMzMsMTQgQEAgYm9vbCBIVE1MVG9rZW5pemVyOjpu
ZXh0VG9rZW4oU2VnbWVudGVkUwogICAgICAgICAgICAgICAgICAgICBhZHZhbmNlU3RyaW5nQW5k
QVNTRVJUSWdub3JpbmdDYXNlKHNvdXJjZSwgInB1YmxpYyIpOwogICAgICAgICAgICAgICAgICAg
ICBTV0lUQ0hfVE8oQWZ0ZXJET0NUWVBFUHVibGljS2V5d29yZFN0YXRlKTsKICAgICAgICAgICAg
ICAgICB9IGVsc2UgaWYgKHJlc3VsdCA9PSBTZWdtZW50ZWRTdHJpbmc6Ok5vdEVub3VnaENoYXJh
Y3RlcnMpCi0gICAgICAgICAgICAgICAgICAgIHJldHVybiBzaG91bGRFbWl0QnVmZmVyZWRDaGFy
YWN0ZXJUb2tlbihzb3VyY2UpOworICAgICAgICAgICAgICAgICAgICByZXR1cm4gaGF2ZUJ1ZmZl
cmVkQ2hhcmFjdGVyVG9rZW4oKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAoY2MgPT0gJ1MnIHx8
IGNjID09ICdzJykgewogICAgICAgICAgICAgICAgIFNlZ21lbnRlZFN0cmluZzo6TG9va0FoZWFk
UmVzdWx0IHJlc3VsdCA9IHNvdXJjZS5sb29rQWhlYWRJZ25vcmluZ0Nhc2Uoc3lzdGVtU3RyaW5n
KTsKICAgICAgICAgICAgICAgICBpZiAocmVzdWx0ID09IFNlZ21lbnRlZFN0cmluZzo6RGlkTWF0
Y2gpIHsKICAgICAgICAgICAgICAgICAgICAgYWR2YW5jZVN0cmluZ0FuZEFTU0VSVElnbm9yaW5n
Q2FzZShzb3VyY2UsICJzeXN0ZW0iKTsKICAgICAgICAgICAgICAgICAgICAgU1dJVENIX1RPKEFm
dGVyRE9DVFlQRVN5c3RlbUtleXdvcmRTdGF0ZSk7CiAgICAgICAgICAgICAgICAgfSBlbHNlIGlm
IChyZXN1bHQgPT0gU2VnbWVudGVkU3RyaW5nOjpOb3RFbm91Z2hDaGFyYWN0ZXJzKQotICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gc2hvdWxkRW1pdEJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oc291
cmNlKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGhhdmVCdWZmZXJlZENoYXJhY3RlclRv
a2VuKCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBwYXJzZUVycm9yKCk7CiAgICAgICAg
ICAgICBtX3Rva2VuLT5zZXRGb3JjZVF1aXJrcygpOwpAQCAtMTY0OSwxMCArMTY0OSw5IEBAIGlu
bGluZSB2b2lkIEhUTUxUb2tlbml6ZXI6OnBhcnNlRXJyb3IoKQogICAgIG5vdEltcGxlbWVudGVk
KCk7CiB9CiAKLWlubGluZSBib29sIEhUTUxUb2tlbml6ZXI6OnNob3VsZEVtaXRCdWZmZXJlZENo
YXJhY3RlclRva2VuKGNvbnN0IFNlZ21lbnRlZFN0cmluZyYgc291cmNlKQoraW5saW5lIGJvb2wg
SFRNTFRva2VuaXplcjo6aGF2ZUJ1ZmZlcmVkQ2hhcmFjdGVyVG9rZW4oKQogewotICAgIHJldHVy
biBzb3VyY2UuaXNDbG9zZWQoKSAmJiBtX3Rva2VuLT50eXBlKCkgPT0gSFRNTFRva2VuOjpDaGFy
YWN0ZXI7CisgICAgcmV0dXJuIG1fdG9rZW4tPnR5cGUoKSA9PSBIVE1MVG9rZW46OkNoYXJhY3Rl
cjsKIH0KIAogfQotCkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTFRva2VuaXplci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmgJKHJldmlzaW9uIDY1MzUzKQorKysg
V2ViQ29yZS9odG1sL0hUTUxUb2tlbml6ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjU0LDcgKzI1
NCw3IEBAIHByaXZhdGU6CiAgICAgaW5saW5lIHZvaWQgc2F2ZUVuZFRhZ05hbWVJZk5lZWRlZCgp
OwogICAgIGlubGluZSBib29sIGlzQXBwcm9wcmlhdGVFbmRUYWcoKTsKIAotICAgIGlubGluZSBi
b29sIHNob3VsZEVtaXRCdWZmZXJlZENoYXJhY3RlclRva2VuKGNvbnN0IFNlZ21lbnRlZFN0cmlu
ZyYpOworICAgIGlubGluZSBib29sIGhhdmVCdWZmZXJlZENoYXJhY3RlclRva2VuKCk7CiAKICAg
ICBTdGF0ZSBtX3N0YXRlOwogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA2NTM1NSkKKysrIExheW91dFRl
c3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDEwLTA4LTEz
ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
RXJpYyBTZWlkZWwuCisKKyAgICAgICAgZG9jdW1lbnQud3JpdGUoKSBkb2Vzbid0IGZsdXNoIHBs
YWluIHRleHQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTg5NjEKKworICAgICAgICBBZGQgdGVzdCBjYXNlcyBmb3IgZmx1c2hpbmcgY2hhcmFjdGVyIHRv
a2Vucy4KKworICAgICAgICAqIGZhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9j
dW1lbnQtd3JpdGUtZXZpbC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvdG9r
ZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQtd3JpdGUtZXZpbC5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50
LXdyaXRlLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC90b2tlbml6ZXIvZmx1
c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS5odG1sOiBBZGRlZC4KKwogMjAxMC0wOC0x
MyAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFVwZGF0ZSB0ZXN0
IGV4cGVjdGF0aW9ucyB0byBhY2NvdW50IGZvciB0aGUgSFRNTDUgZW50aXR5IHBhcnNlci4gIFRo
ZXJlCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWlu
LWRvY3VtZW50LXdyaXRlLWV2aWwtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQtd3JpdGUtZXZp
bC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXpl
ci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIgQEAKK1Nob3VsZCBiZSAxMjoKKzEyCkluZGV4OiBMYXlv
dXRUZXN0cy9mYXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRl
LWV2aWwuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXplci9mbHVz
aC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLWV2aWwuaHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL2Zhc3QvdG9rZW5pemVyL2ZsdXNoLWNoYXJhY3RlcnMtaW4tZG9jdW1lbnQt
d3JpdGUtZXZpbC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM2IEBACis8aGVhZD4KKzxz
Y3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgIGxheW91dFRlc3RD
b250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGls
RG9uZSgpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgeworICBkb2N1bWVudC53cml0ZSgiPGRpdj5T
aG91bGQgYmUgMTI6PC9kaXY+PGRpdj4xIik7CisKKyAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKCJkaXYiKS5sZW5ndGggIT0gMikKKyAgICBhbGVydCgiRXJyb3IgLSB3cm9uZyBu
dW1iZXIgb2YgRElWcyBhdCBzdGVwIDEiKTsKKworICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudHNC
eVRhZ05hbWUoImRpdiIpWzFdLnRleHRDb250ZW50ICE9ICIxIikKKyAgICBhbGVydCgiRXJyb3Ig
LSBpbmNvcnJlY3QgZGl2IGNvbnRlbnQgYXQgc3RlcCAxIik7CisKKyAgc2V0VGltZW91dCh0ZXN0
MiwgMTApOworfQorCitmdW5jdGlvbiB0ZXN0MigpIHsKKyAgZG9jdW1lbnQud3JpdGUoIjI8L2Rp
dj4iKQorCisgIGlmIChkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiZGl2IikubGVuZ3Ro
ICE9IDIpCisgICAgYWxlcnQoIkVycm9yIC0gd3JvbmcgbnVtYmVyIG9mIERJVnMgYXQgc3RlcCAy
Iik7CisKKyAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJkaXYiKVsxXS50ZXh0
Q29udGVudCAhPSAiMTIiKQorICAgIGFsZXJ0KCJFcnJvciAtIGluY29ycmVjdCBkaXYgY29udGVu
dCBhdCBzdGVwIDIiKTsKKworICBkb2N1bWVudC5jbG9zZSgpOworCisgIHNldFRpbWVvdXQoImxh
eW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKSIsIDEwKTsKK30KKzwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorPC9ib2R5PgpJbmRleDogTGF5b3V0VGVzdHMv
ZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hh
cmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9mYXN0L3Rva2VuaXplci9mbHVzaC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdy
aXRlLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyIEBACitTaG91bGQgc2F5
IFNVQ0NFU1M6CitTVUNDRVNTCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3Rva2VuaXplci9mbHVz
aC1jaGFyYWN0ZXJzLWluLWRvY3VtZW50LXdyaXRlLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hhcmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC90b2tlbml6ZXIvZmx1c2gtY2hh
cmFjdGVycy1pbi1kb2N1bWVudC13cml0ZS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE2
IEBACis8aGVhZD4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7
CisgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgbGF5b3V0VGVzdENvbnRy
b2xsZXIud2FpdFVudGlsRG9uZSgpOworfQorCitmdW5jdGlvbiB0ZXN0KCkgeworICBkb2N1bWVu
dC53cml0ZSgiU2hvdWxkIHNheSBTVUNDRVNTOjxwPlNVQ0NFU1MiKTsKKworICBzZXRUaW1lb3V0
KCJsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCkiLCAxKTsKK30KKzwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorPC9ib2R5Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>