<?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>189057</bug_id>
          
          <creation_ts>2018-08-28 14:32:27 -0700</creation_ts>
          <short_desc>[Curl] Stop sending request with credential if no authorization requested.</short_desc>
          <delta_ts>2018-09-07 17:33:42 -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>Platform</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Basuke Suzuki">basuke</reporter>
          <assigned_to name="Basuke Suzuki">basuke</assigned_to>
          <cc>achristensen</cc>
    
    <cc>basuke</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fujii</cc>
    
    <cc>galpeter</cc>
    
    <cc>pvollan</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1454555</commentid>
    <comment_count>0</comment_count>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-08-28 14:32:27 -0700</bug_when>
    <thetext>When 401 response returns without &apos;www-authenticate&apos; header, suppress another request with credential.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1454576</commentid>
    <comment_count>1</comment_count>
      <attachid>348350</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-08-28 15:14:44 -0700</bug_when>
    <thetext>Created attachment 348350
PATCH</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456610</commentid>
    <comment_count>2</comment_count>
      <attachid>348350</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-04 20:51:11 -0700</bug_when>
    <thetext>Comment on attachment 348350
PATCH

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

&gt; LayoutTests/ChangeLog:9
&gt; +        * http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php: Added.

I can&apos;t understand what does this test case do.
Why don&apos;t you check whether Authorization header is sent?

&gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php:21
&gt; +    req.open(&quot;GET&quot;, &quot;&lt;?php echo basename(__FILE__) . &apos;?auth=1&apos;; ?&gt;&quot;, false);

I prefer using JS API to get current URL instead of PHP.
window.location.href</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456652</commentid>
    <comment_count>3</comment_count>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-04 23:54:05 -0700</bug_when>
    <thetext>(In reply to Fujii Hironori from comment #2)
&gt; Comment on attachment 348350 [details]
&gt; PATCH
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=348350&amp;action=review
&gt; 
&gt; &gt; LayoutTests/ChangeLog:9
&gt; &gt; +        * http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php: Added.
&gt; 
&gt; I can&apos;t understand what does this test case do.
&gt; Why don&apos;t you check whether Authorization header is sent?

The browser behaves differently whether authorization exists or not.

&gt; 
&gt; &gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php:21
&gt; &gt; +    req.open(&quot;GET&quot;, &quot;&lt;?php echo basename(__FILE__) . &apos;?auth=1&apos;; ?&gt;&quot;, false);
&gt; 
&gt; I prefer using JS API to get current URL instead of PHP.
&gt; window.location.href

I don&apos;t agree with that, but I can change as you wish if that is the requirement of reviewing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1456972</commentid>
    <comment_count>4</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-05 20:10:10 -0700</bug_when>
    <thetext>(In reply to Basuke Suzuki from comment #3)
&gt; &gt; I can&apos;t understand what does this test case do.
&gt; &gt; Why don&apos;t you check whether Authorization header is sent?
&gt; 
&gt; The browser behaves differently whether authorization exists or not.

I don&apos;t understand this.
Authorization is a request header sent by clients (browsers).

&gt; &gt; &gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php:21
&gt; &gt; &gt; +    req.open(&quot;GET&quot;, &quot;&lt;?php echo basename(__FILE__) . &apos;?auth=1&apos;; ?&gt;&quot;, false);
&gt; &gt; 
&gt; &gt; I prefer using JS API to get current URL instead of PHP.
&gt; &gt; window.location.href
&gt; 
&gt; I don&apos;t agree with that, but I can change as you wish if that is the
&gt; requirement of reviewing.

Mixing JS and PHP makes code ugly. 
I think you can write as following in this case.
&gt; req.open(&quot;GET&quot;, &apos;?auth=1&apos;, false);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457152</commentid>
    <comment_count>5</comment_count>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-06 11:08:29 -0700</bug_when>
    <thetext>(In reply to Fujii Hironori from comment #4)
&gt; (In reply to Basuke Suzuki from comment #3)
&gt; &gt; &gt; I can&apos;t understand what does this test case do.
&gt; &gt; &gt; Why don&apos;t you check whether Authorization header is sent?
&gt; &gt; 
&gt; &gt; The browser behaves differently whether authorization exists or not.
&gt; 
&gt; I don&apos;t understand this.
&gt; Authorization is a request header sent by clients (browsers).



&gt; 
&gt; &gt; &gt; &gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php:21
&gt; &gt; &gt; &gt; +    req.open(&quot;GET&quot;, &quot;&lt;?php echo basename(__FILE__) . &apos;?auth=1&apos;; ?&gt;&quot;, false);
&gt; &gt; &gt; 
&gt; &gt; &gt; I prefer using JS API to get current URL instead of PHP.
&gt; &gt; &gt; window.location.href
&gt; &gt; 
&gt; &gt; I don&apos;t agree with that, but I can change as you wish if that is the
&gt; &gt; requirement of reviewing.
&gt; 
&gt; Mixing JS and PHP makes code ugly. 
&gt; I think you can write as following in this case.
&gt; &gt; req.open(&quot;GET&quot;, &apos;?auth=1&apos;, false);

(In reply to Fujii Hironori from comment #4)
&gt; (In reply to Basuke Suzuki from comment #3)
&gt; &gt; &gt; I can&apos;t understand what does this test case do.
&gt; &gt; &gt; Why don&apos;t you check whether Authorization header is sent?
&gt; &gt; 
&gt; &gt; The browser behaves differently whether authorization exists or not.
&gt; 
&gt; I don&apos;t understand this.
&gt; Authorization is a request header sent by clients (browsers).


My bad. &quot;authenticate&quot; header. And it seems test file was missing with actual check. It was there and gone. I don&apos;t know why, but I&apos;m fixing this.


&gt; 
&gt; &gt; &gt; &gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php:21
&gt; &gt; &gt; &gt; +    req.open(&quot;GET&quot;, &quot;&lt;?php echo basename(__FILE__) . &apos;?auth=1&apos;; ?&gt;&quot;, false);
&gt; &gt; &gt; 
&gt; &gt; &gt; I prefer using JS API to get current URL instead of PHP.
&gt; &gt; &gt; window.location.href
&gt; &gt; 
&gt; &gt; I don&apos;t agree with that, but I can change as you wish if that is the
&gt; &gt; requirement of reviewing.
&gt; 
&gt; Mixing JS and PHP makes code ugly. 
&gt; I think you can write as following in this case.
&gt; &gt; req.open(&quot;GET&quot;, &apos;?auth=1&apos;, false);

Okay.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457160</commentid>
    <comment_count>6</comment_count>
      <attachid>348350</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-09-06 11:26:32 -0700</bug_when>
    <thetext>Comment on attachment 348350
PATCH

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

&gt;&gt;&gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.php:21
&gt;&gt;&gt; +    req.open(&quot;GET&quot;, &quot;&lt;?php echo basename(__FILE__) . &apos;?auth=1&apos;; ?&gt;&quot;, false);
&gt;&gt; 
&gt;&gt; I prefer using JS API to get current URL instead of PHP.
&gt;&gt; window.location.href
&gt; 
&gt; I don&apos;t agree with that, but I can change as you wish if that is the requirement of reviewing.

I agree with Fujii, and please don&apos;t use synchronous xmlhttprequest unless you&apos;re explicitly testing synchronous behavior, which you&apos;re not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457179</commentid>
    <comment_count>7</comment_count>
      <attachid>349053</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-06 12:30:40 -0700</bug_when>
    <thetext>Created attachment 349053
PATCH

Stop using sync test.
Separate sub resources.
Add more detail for this test purpose.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457394</commentid>
    <comment_count>8</comment_count>
      <attachid>349053</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2018-09-06 20:55:25 -0700</bug_when>
    <thetext>Comment on attachment 349053
PATCH

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

&gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.html:11
&gt; +            shouldBe(&quot;xhr.status&quot;, &quot;401&quot;);

Do you expect this check fail unless this patch is applied?
I confirmed this says &quot;PASS xhr.status is 401&quot; even without applying this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457715</commentid>
    <comment_count>9</comment_count>
      <attachid>349053</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-07 15:08:14 -0700</bug_when>
    <thetext>Comment on attachment 349053
PATCH

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

&gt;&gt; LayoutTests/http/tests/xmlhttprequest/unauthorized-without-authenticate-header.html:11
&gt;&gt; +            shouldBe(&quot;xhr.status&quot;, &quot;401&quot;);
&gt; 
&gt; Do you expect this check fail unless this patch is applied?
&gt; I confirmed this says &quot;PASS xhr.status is 401&quot; even without applying this change.

That&apos;s okay. The server script returns 401, so the result is expected. What I want to check here is that the response is 401 and no authentication challenge should be invoked.

Latter is checked by the absence of &apos;http://127.0.0.1:8000/xmlhttprequest/resources/no-authenticate-header-401.php - didReceiveAuthenticationChallenge - Simulating cancelled authentication sheet&apos; debug message.
.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457722</commentid>
    <comment_count>10</comment_count>
      <attachid>349204</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2018-09-07 15:23:53 -0700</bug_when>
    <thetext>Created attachment 349204
Fix tests to be run after onload.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457789</commentid>
    <comment_count>11</comment_count>
      <attachid>349204</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-07 17:32:20 -0700</bug_when>
    <thetext>Comment on attachment 349204
Fix tests to be run after onload.

Clearing flags on attachment: 349204

Committed r235821: &lt;https://trac.webkit.org/changeset/235821&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457790</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-07 17:32:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1457791</commentid>
    <comment_count>13</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-09-07 17:33:42 -0700</bug_when>
    <thetext>&lt;rdar://problem/44245852&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348350</attachid>
            <date>2018-08-28 15:14:44 -0700</date>
            <delta_ts>2018-09-06 12:30:40 -0700</delta_ts>
            <desc>PATCH</desc>
            <filename>189057.diff</filename>
            <type>text/plain</type>
            <size>5431</size>
            <attacher name="Basuke Suzuki">basuke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAxNzc5ODNmNDk0ZC4uMmJmZWU5NGM4NjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAor
MjAxOC0wOC0yOCAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29ueS5jb20+CisKKyAg
ICAgICAgW0N1cmxdIFN0b3Agc2VuZGluZyByZXF1ZXN0IHdpdGggY3JlZGVudGlhbCBpZiBubyBh
dXRob3JpemF0aW9uIHJlcXVlc3RlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTA1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC91bmF1dGhvcml6ZWQt
d2l0aG91dC1hdXRoZW50aWNhdGUtaGVhZGVyLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC91bmF1dGhvcml6ZWQtd2l0aG91dC1hdXRoZW50
aWNhdGUtaGVhZGVyLnBocDogQWRkZWQuCisKIDIwMTgtMDgtMjQgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIGxpYndlYnJ0YyBQZWVyQ29ubmVjdGlvbjo6QWRk
VHJhY2sgc29tZXRpbWVzIGZhaWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMv
eG1saHR0cHJlcXVlc3QvdW5hdXRob3JpemVkLXdpdGhvdXQtYXV0aGVudGljYXRlLWhlYWRlci1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3VuYXV0
aG9yaXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5jY2EyMjEwZmZmZAotLS0gL2Rldi9udWxs
CisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvdW5hdXRob3JpemVk
LXdpdGhvdXQtYXV0aGVudGljYXRlLWhlYWRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAor
cmVzdWx0OiBQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHBy
ZXF1ZXN0L3VuYXV0aG9yaXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXIucGhwIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC91bmF1dGhvcml6ZWQtd2l0aG91dC1h
dXRoZW50aWNhdGUtaGVhZGVyLnBocApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMC4uZmVmMTQ4YzBhNGIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL3htbGh0dHByZXF1ZXN0L3VuYXV0aG9yaXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFk
ZXIucGhwCkBAIC0wLDAgKzEsMjUgQEAKKzw/cGhwCisKKy8qCisgKiBUZXN0IHBhc3NlcyBpZiB0
aGUgcmVxdWVzdCByZXR1cm5zIHdpdGhvdXQgY3Jhc2ggb3IgdGltZW91dC4KKyAqLworCitpZiAo
aXNzZXQoJF9HRVRbJ2F1dGgnXSkpIHsKKyAgICBoZWFkZXIoJ0hUVFAvMS4xIDQwMSBVTkFVVEhP
UklaRUQnKTsKKyAgICBleGl0KDApOworfQorCis/PgorPGJvZHk+CisgICAgPGRpdiBpZD1yZXN1
bHQ+cmVzdWx0OiA8L2Rpdj4KKworICAgIDxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKworICAgIHJlcSA9IG5ldyBY
TUxIdHRwUmVxdWVzdDsKKyAgICByZXEub3BlbigiR0VUIiwgIjw/cGhwIGVjaG8gYmFzZW5hbWUo
X19GSUxFX18pIC4gJz9hdXRoPTEnOyA/PiIsIGZhbHNlKTsKKyAgICByZXEuc2VuZChudWxsKTsK
KyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0IikuZmlyc3RDaGlsZC5kYXRhICs9
ICJQQVNTIjsKKyAgICA8L3NjcmlwdD4KKzwvYm9keT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBkMTA2NDNkOTUz
OS4uYjg0MTc1YjAyZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxOC0wOC0yOCAg
QmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29ueS5jb20+CisKKyAgICAgICAgW0N1cmxd
IFN0b3Agc2VuZGluZyByZXF1ZXN0IHdpdGggY3JlZGVudGlhbCBpZiBubyBhdXRob3JpemF0aW9u
IHJlcXVlc3RlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4OTA1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFdoZW4gNDAxIHJlc3BvbnNlIHJldHVybnMgd2l0aG91dCAnd3d3LWF1dGhlbnRpY2F0ZScg
aGVhZGVyLCBzdXBwcmVzcyBhbm90aGVyIHJlcXVlc3Qgd2l0aCBjcmVkZW50aWFsLgorCisgICAg
ICAgIFRlc3Q6IGh0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvdW5hdXRob3JpemVkLXdpdGhvdXQt
YXV0aGVudGljYXRlLWhlYWRlci5waHAKKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3Vy
bC9DdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDdXJs
UmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZTo6Y3VybERpZFJlY2VpdmVSZXNwb25zZSk6CisKIDIwMTgt
MDgtMjQgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIGxpYndl
YnJ0YyBQZWVyQ29ubmVjdGlvbjo6QWRkVHJhY2sgc29tZXRpbWVzIGZhaWwKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVE
ZWxlZ2F0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJl
c291cmNlSGFuZGxlRGVsZWdhdGUuY3BwCmluZGV4IDZhMDZmMTlkMjg3Li5jZjhlOTlmYWNmZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNv
dXJjZUhhbmRsZURlbGVnYXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL2N1cmwvQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUuY3BwCkBAIC0xMTksNyArMTE5LDcg
QEAgdm9pZCBDdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZTo6Y3VybERpZFJlY2VpdmVSZXNwb25z
ZShDdXJsUmVxdWVzdCYgcmVxdWVzdCwgY28KICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IGlmIChtX3Jlc3BvbnNlLmlzVW5hdXRob3JpemVkKCkpIHsKKyAgICBpZiAobV9yZXNwb25zZS5p
c1VuYXV0aG9yaXplZCgpICYmIHJlY2VpdmVkUmVzcG9uc2UuYXZhaWxhYmxlSHR0cEF1dGgpIHsK
ICAgICAgICAgQXV0aGVudGljYXRpb25DaGFsbGVuZ2UgY2hhbGxlbmdlKHJlY2VpdmVkUmVzcG9u
c2UsIGQoKS0+bV9hdXRoRmFpbHVyZUNvdW50LCBtX3Jlc3BvbnNlLCAmbV9oYW5kbGUpOwogICAg
ICAgICBtX2hhbmRsZS5kaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFsbGVuZ2UoY2hhbGxlbmdl
KTsKICAgICAgICAgZCgpLT5tX2F1dGhGYWlsdXJlQ291bnQrKzsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKaW5kZXggZjZiODcy
MjIyOGEuLjdmZTZlMDQ3MzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE4LTA4LTI4
ICBCYXN1a2UgU3V6dWtpICA8QmFzdWtlLlN1enVraUBzb255LmNvbT4KKworICAgICAgICBbQ3Vy
bF0gU3RvcCBzZW5kaW5nIHJlcXVlc3Qgd2l0aCBjcmVkZW50aWFsIGlmIG5vIGF1dGhvcml6YXRp
b24gcmVxdWVzdGVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTg5MDU3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgV2hlbiA0MDEgcmVzcG9uc2UgcmV0dXJucyB3aXRob3V0ICd3d3ctYXV0aGVudGljYXRl
JyBoZWFkZXIsIHN1cHByZXNzIGFub3RoZXIgcmVxdWVzdCB3aXRoIGNyZWRlbnRpYWwuCisgICAg
ICAgIFNhbWUgZml4IGZvciBwcm94eSBhdXRoZW50aWNhdGlvbi4KKworICAgICAgICAqIE5ldHdv
cmtQcm9jZXNzL2N1cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5jcHA6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtEYXRhVGFza0N1cmw6OmN1cmxEaWRSZWNlaXZlUmVzcG9uc2UpOgorCiAyMDE4LTA4
LTI0ICBCYXN1a2UgU3V6dWtpICA8QmFzdWtlLlN1enVraUBzb255LmNvbT4KIAogICAgICAgICBb
Q3VybF0gTWF0Y2ggdGhlIGludGVyZmFjZSB1c2VkIGluIE5ldHdvcmtEYXRhVGFzayBhbmQgUmVz
b3VyY2VIYW5kbGUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2N1
cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5jcHAgYi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNz
L2N1cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5jcHAKaW5kZXggMjliNTI4ZTFjNzkuLmQ5OGZjMDBm
MTUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2N1cmwvTmV0d29y
a0RhdGFUYXNrQ3VybC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJs
L05ldHdvcmtEYXRhVGFza0N1cmwuY3BwCkBAIC0xNjMsMTMgKzE2MywxMyBAQCB2b2lkIE5ldHdv
cmtEYXRhVGFza0N1cmw6OmN1cmxEaWRSZWNlaXZlUmVzcG9uc2UoQ3VybFJlcXVlc3QmIHJlcXVl
c3QsIGNvbnN0IEN1cgogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKG1fcmVzcG9u
c2UuaXNVbmF1dGhvcml6ZWQoKSkgeworICAgIGlmIChtX3Jlc3BvbnNlLmlzVW5hdXRob3JpemVk
KCkgJiYgcmVjZWl2ZWRSZXNwb25zZS5hdmFpbGFibGVIdHRwQXV0aCkgewogICAgICAgICB0cnlI
dHRwQXV0aGVudGljYXRpb24oQXV0aGVudGljYXRpb25DaGFsbGVuZ2UocmVjZWl2ZWRSZXNwb25z
ZSwgbV9hdXRoRmFpbHVyZUNvdW50LCBtX3Jlc3BvbnNlKSk7CiAgICAgICAgIG1fYXV0aEZhaWx1
cmVDb3VudCsrOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKG1fcmVzcG9uc2Uu
aXNQcm94eUF1dGhlbnRpY2F0aW9uUmVxdWlyZWQoKSkgeworICAgIGlmIChtX3Jlc3BvbnNlLmlz
UHJveHlBdXRoZW50aWNhdGlvblJlcXVpcmVkKCkgJiYgcmVjZWl2ZWRSZXNwb25zZS5hdmFpbGFi
bGVQcm94eUF1dGgpIHsKICAgICAgICAgdHJ5UHJveHlBdXRoZW50aWNhdGlvbihBdXRoZW50aWNh
dGlvbkNoYWxsZW5nZShyZWNlaXZlZFJlc3BvbnNlLCAwLCBtX3Jlc3BvbnNlKSk7CiAgICAgICAg
IHJldHVybjsKICAgICB9Cg==
</data>
<flag name="review"
          id="366004"
          type_id="1"
          status="-"
          setter="achristensen"
    />
    <flag name="commit-queue"
          id="366005"
          type_id="3"
          status="-"
          setter="achristensen"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349053</attachid>
            <date>2018-09-06 12:30:40 -0700</date>
            <delta_ts>2018-09-07 15:23:53 -0700</delta_ts>
            <desc>PATCH</desc>
            <filename>189057.diff</filename>
            <type>text/plain</type>
            <size>6720</size>
            <attacher name="Basuke Suzuki">basuke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5OTcyZTQ0MDY2YS4uYjhkOTdlOTM0NDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAor
MjAxOC0wOS0wNiAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29ueS5jb20+CisKKyAg
ICAgICAgW0N1cmxdIFN0b3Agc2VuZGluZyByZXF1ZXN0IHdpdGggY3JlZGVudGlhbCBpZiBubyBh
dXRob3JpemF0aW9uIHJlcXVlc3RlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTA1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvbm8t
YXV0aGVudGljYXRlLWhlYWRlci00MDEucGhwOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3htbGh0dHByZXF1ZXN0L3VuYXV0aG9yaXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXIt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0
L3VuYXV0aG9yaXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXIuaHRtbDogQWRkZWQuCisK
IDIwMTgtMDgtMzEgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBb
IFdLMiBdIGh0dHAvdGVzdHMvd29ya2Vycy9zZXJ2aWNlL2NsaWVudC0qLXBhZ2UtY2FjaGUuaHRt
bCBMYXlvdXRUZXN0cyBhcmUgZmxha3kKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWF1dGhlbnRpY2F0ZS1oZWFkZXItNDAxLnBo
cCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWF1
dGhlbnRpY2F0ZS1oZWFkZXItNDAxLnBocApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMC4uOGJjZjFhNzc2YmMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3htbGh0dHByZXF1ZXN0L3Jlc291cmNlcy9uby1hdXRoZW50aWNhdGUtaGVhZGVyLTQw
MS5waHAKQEAgLTAsMCArMSwzIEBACis8P3BocAorCitoZWFkZXIoJ0hUVFAvMS4xIDQwMSBVTkFV
VEhPUklaRUQnKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJl
cXVlc3QvdW5hdXRob3JpemVkLXdpdGhvdXQtYXV0aGVudGljYXRlLWhlYWRlci1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3VuYXV0aG9yaXplZC13
aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXItZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi44MzJhZTdkY2ZlOQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvdW5hdXRob3JpemVkLXdpdGhvdXQt
YXV0aGVudGljYXRlLWhlYWRlci1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxMCBAQAorVGhpcyB0
ZXN0cyB0aGF0IHRoZSByZXF1ZXN0IGRvZXNuJ3Qgc2VuZHMgYW5vdGhlciByZXF1ZXN0IGZvciA0
MDEgcmVzcG9uc2Ugd2l0aG91dCB3d3ctYXV0aGVudGljYXRlIGhlYWRlci4gSWYgaXQgZG9lcywg
dGhlIHJlcXVlc3QgbmV2ZXIgc3RvcHMgYnkgcmVwZWF0ZWQgcmVxdWVzdCBzZW5kaW5nLiBUZXN0
IHBhc3NlcyBpZiB0aGUgcmVxdWVzdCByZXR1cm5zIHdpdGhvdXQgY3Jhc2ggb3IgdGltZW91dC4K
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgeGhyLnN0YXR1cyBpcyA0MDEK
K1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3VuYXV0aG9yaXpl
ZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXIuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvdGVz
dHMveG1saHR0cHJlcXVlc3QvdW5hdXRob3JpemVkLXdpdGhvdXQtYXV0aGVudGljYXRlLWhlYWRl
ci5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4yNzI5YTRhODdh
ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVl
c3QvdW5hdXRob3JpemVkLXdpdGhvdXQtYXV0aGVudGljYXRlLWhlYWRlci5odG1sCkBAIC0wLDAg
KzEsMjYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAgICA8c2NyaXB0IHNy
Yz0iL2pzLXRlc3QtcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKyAgICA8c2Ny
aXB0PgorICAgICAgICBkZXNjcmlwdGlvbigiVGhpcyB0ZXN0cyB0aGF0IHRoZSByZXF1ZXN0IGRv
ZXNuJ3Qgc2VuZHMgYW5vdGhlciByZXF1ZXN0IGZvciA0MDEgcmVzcG9uc2Ugd2l0aG91dCB3d3ct
YXV0aGVudGljYXRlIGhlYWRlci4gSWYgaXQgZG9lcywgdGhlIHJlcXVlc3QgbmV2ZXIgc3RvcHMg
YnkgcmVwZWF0ZWQgcmVxdWVzdCBzZW5kaW5nLiBUZXN0IHBhc3NlcyBpZiB0aGUgcmVxdWVzdCBy
ZXR1cm5zIHdpdGhvdXQgY3Jhc2ggb3IgdGltZW91dC4iKTsKKyAgICAgICAgd2luZG93LmpzVGVz
dElzQXN5bmMgPSB0cnVlOworCisgICAgICAgIGNvbnN0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVz
dCgpOworICAgICAgICB4aHIub25sb2FkID0geGhyLm9uZXJyb3IgPSBmdW5jdGlvbigpIHsKKyAg
ICAgICAgICAgIHNob3VsZEJlKCJ4aHIuc3RhdHVzIiwgIjQwMSIpOworICAgICAgICAgICAgZmlu
aXNoSlNUZXN0KCk7CisgICAgICAgIH0KKworICAgICAgICB4aHIub3BlbignR0VUJywgJ3Jlc291
cmNlcy9uby1hdXRoZW50aWNhdGUtaGVhZGVyLTQwMS5waHAnKTsKKyAgICAgICAgeGhyLnNlbmQo
bnVsbCk7CisgICAgPC9zY3JpcHQ+CisgICAgPHNjcmlwdCBzcmM9Ii9qcy10ZXN0LXJlc291cmNl
cy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorCis8Ym9keT4KKyAgICA8ZGl2
IGlkPSJkZXNjcmlwdGlvbiI+PC9kaXY+CisgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8
L2JvZHk+CisKKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5k
ZXggNzRjNzBiNTdjYmMuLjgxMGI1MWZmZjhkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMTgtMDktMDYgIEJhc3VrZSBTdXp1a2kgIDxCYXN1a2UuU3V6dWtpQHNvbnkuY29tPgorCisg
ICAgICAgIFtDdXJsXSBTdG9wIHNlbmRpbmcgcmVxdWVzdCB3aXRoIGNyZWRlbnRpYWwgaWYgbm8g
YXV0aG9yaXphdGlvbiByZXF1ZXN0ZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xODkwNTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBXaGVuIDQwMSByZXNwb25zZSByZXR1cm5zIHdpdGhvdXQgJ3d3dy1h
dXRoZW50aWNhdGUnIGhlYWRlciwgc3VwcHJlc3MgYW5vdGhlciByZXF1ZXN0IHdpdGggY3JlZGVu
dGlhbC4KKworICAgICAgICBUZXN0OiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3VuYXV0aG9y
aXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXIuaHRtbAorCisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkN1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkUmVjZWl2ZVJlc3Bv
bnNlKToKKwogMjAxOC0wOC0zMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAg
ICAgICAgIFsgV0syIF0gaHR0cC90ZXN0cy93b3JrZXJzL3NlcnZpY2UvY2xpZW50LSotcGFnZS1j
YWNoZS5odG1sIExheW91dFRlc3RzIGFyZSBmbGFreQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVE
ZWxlZ2F0ZS5jcHAKaW5kZXggNmEwNmYxOWQyODcuLmNmOGU5OWZhY2ZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlc291cmNlSGFuZGxlRGVs
ZWdhdGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJs
UmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAKQEAgLTExOSw3ICsxMTksNyBAQCB2b2lkIEN1cmxS
ZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkUmVjZWl2ZVJlc3BvbnNlKEN1cmxSZXF1ZXN0
JiByZXF1ZXN0LCBjbwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKG1fcmVzcG9u
c2UuaXNVbmF1dGhvcml6ZWQoKSkgeworICAgIGlmIChtX3Jlc3BvbnNlLmlzVW5hdXRob3JpemVk
KCkgJiYgcmVjZWl2ZWRSZXNwb25zZS5hdmFpbGFibGVIdHRwQXV0aCkgewogICAgICAgICBBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZSBjaGFsbGVuZ2UocmVjZWl2ZWRSZXNwb25zZSwgZCgpLT5tX2F1
dGhGYWlsdXJlQ291bnQsIG1fcmVzcG9uc2UsICZtX2hhbmRsZSk7CiAgICAgICAgIG1faGFuZGxl
LmRpZFJlY2VpdmVBdXRoZW50aWNhdGlvbkNoYWxsZW5nZShjaGFsbGVuZ2UpOwogICAgICAgICBk
KCktPm1fYXV0aEZhaWx1cmVDb3VudCsrOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCBmYzAzYTU2NTFjMi4uYTBmMDI2
YjBhMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTgtMDktMDYgIEJhc3VrZSBTdXp1
a2kgIDxCYXN1a2UuU3V6dWtpQHNvbnkuY29tPgorCisgICAgICAgIFtDdXJsXSBTdG9wIHNlbmRp
bmcgcmVxdWVzdCB3aXRoIGNyZWRlbnRpYWwgaWYgbm8gYXV0aG9yaXphdGlvbiByZXF1ZXN0ZWQu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODkwNTcK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIDQw
MSByZXNwb25zZSByZXR1cm5zIHdpdGhvdXQgJ3d3dy1hdXRoZW50aWNhdGUnIGhlYWRlciwgc3Vw
cHJlc3MgYW5vdGhlciByZXF1ZXN0IHdpdGggY3JlZGVudGlhbC4KKyAgICAgICAgU2FtZSBmaXgg
Zm9yIHByb3h5IGF1dGhlbnRpY2F0aW9uLgorCisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvY3Vy
bC9OZXR3b3JrRGF0YVRhc2tDdXJsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya0RhdGFU
YXNrQ3VybDo6Y3VybERpZFJlY2VpdmVSZXNwb25zZSk6CisKIDIwMTgtMDgtMzEgIEpvaG4gV2ls
YW5kZXIgIDx3aWxhbmRlckBhcHBsZS5jb20+CiAKICAgICAgICAgU3RvcmFnZSBBY2Nlc3MgQVBJ
OiBNYWludGFpbiBhY2Nlc3MgdGhyb3VnaCBzYW1lLXNpdGUgbmF2aWdhdGlvbnMKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY3VybC9OZXR3b3JrRGF0YVRhc2tDdXJs
LmNwcCBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY3VybC9OZXR3b3JrRGF0YVRhc2tD
dXJsLmNwcAppbmRleCBhOTAzNTY5NWJiOC4uZjdkNDljMjgyYjEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY3VybC9OZXR3b3JrRGF0YVRhc2tDdXJsLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL2N1cmwvTmV0d29ya0RhdGFUYXNrQ3VybC5j
cHAKQEAgLTE2MSwxMyArMTYxLDEzIEBAIHZvaWQgTmV0d29ya0RhdGFUYXNrQ3VybDo6Y3VybERp
ZFJlY2VpdmVSZXNwb25zZShDdXJsUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgQ3VyCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBpZiAobV9yZXNwb25zZS5pc1VuYXV0aG9yaXplZCgpKSB7
CisgICAgaWYgKG1fcmVzcG9uc2UuaXNVbmF1dGhvcml6ZWQoKSAmJiByZWNlaXZlZFJlc3BvbnNl
LmF2YWlsYWJsZUh0dHBBdXRoKSB7CiAgICAgICAgIHRyeUh0dHBBdXRoZW50aWNhdGlvbihBdXRo
ZW50aWNhdGlvbkNoYWxsZW5nZShyZWNlaXZlZFJlc3BvbnNlLCBtX2F1dGhGYWlsdXJlQ291bnQs
IG1fcmVzcG9uc2UpKTsKICAgICAgICAgbV9hdXRoRmFpbHVyZUNvdW50Kys7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAKLSAgICBpZiAobV9yZXNwb25zZS5pc1Byb3h5QXV0aGVudGljYXRpb25S
ZXF1aXJlZCgpKSB7CisgICAgaWYgKG1fcmVzcG9uc2UuaXNQcm94eUF1dGhlbnRpY2F0aW9uUmVx
dWlyZWQoKSAmJiByZWNlaXZlZFJlc3BvbnNlLmF2YWlsYWJsZVByb3h5QXV0aCkgewogICAgICAg
ICB0cnlQcm94eUF1dGhlbnRpY2F0aW9uKEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHJlY2VpdmVk
UmVzcG9uc2UsIDAsIG1fcmVzcG9uc2UpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349204</attachid>
            <date>2018-09-07 15:23:53 -0700</date>
            <delta_ts>2018-09-07 17:32:20 -0700</delta_ts>
            <desc>Fix tests to be run after onload.</desc>
            <filename>189057.diff</filename>
            <type>text/plain</type>
            <size>6782</size>
            <attacher name="Basuke Suzuki">basuke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwOGJjOTc1ZmRiOS4uMWY2ZjFjYTdhYzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAor
MjAxOC0wOS0wNyAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29ueS5jb20+CisKKyAg
ICAgICAgW0N1cmxdIFN0b3Agc2VuZGluZyByZXF1ZXN0IHdpdGggY3JlZGVudGlhbCBpZiBubyBh
dXRob3JpemF0aW9uIHJlcXVlc3RlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE4OTA1NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvbm8t
YXV0aGVudGljYXRlLWhlYWRlci00MDEucGhwOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3htbGh0dHByZXF1ZXN0L3VuYXV0aG9yaXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXIt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0
L3VuYXV0aG9yaXplZC13aXRob3V0LWF1dGhlbnRpY2F0ZS1oZWFkZXIuaHRtbDogQWRkZWQuCisK
IDIwMTgtMDktMDcgIFphbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBb
aU9TXSBVbnJldmlld2VkIHRlc3QgZ2FyZGVuaW5nLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJjZXMvbm8tYXV0aGVudGljYXRlLWhlYWRl
ci00MDEucGhwIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC9yZXNvdXJj
ZXMvbm8tYXV0aGVudGljYXRlLWhlYWRlci00MDEucGhwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwLi44YmNmMWE3NzZiYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvcmVzb3VyY2VzL25vLWF1dGhlbnRpY2F0ZS1o
ZWFkZXItNDAxLnBocApAQCAtMCwwICsxLDMgQEAKKzw/cGhwCisKK2hlYWRlcignSFRUUC8xLjEg
NDAxIFVOQVVUSE9SSVpFRCcpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94
bWxodHRwcmVxdWVzdC91bmF1dGhvcml6ZWQtd2l0aG91dC1hdXRoZW50aWNhdGUtaGVhZGVyLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2h0dHAvdGVzdHMveG1saHR0cHJlcXVlc3QvdW5hdXRo
b3JpemVkLXdpdGhvdXQtYXV0aGVudGljYXRlLWhlYWRlci1leHBlY3RlZC50eHQKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjgzOWRhMzJhYjI0Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC91bmF1dGhvcml6ZWQt
d2l0aG91dC1hdXRoZW50aWNhdGUtaGVhZGVyLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDkgQEAK
K1RoaXMgdGVzdHMgdGhhdCB0aGUgcmVxdWVzdCBkb2Vzbid0IHNlbmRzIGFub3RoZXIgcmVxdWVz
dCBmb3IgNDAxIHJlc3BvbnNlIHdpdGhvdXQgd3d3LWF1dGhlbnRpY2F0ZSBoZWFkZXIuIElmIGl0
IGRvZXMsIHRoZSByZXF1ZXN0IG5ldmVyIHN0b3BzIGJ5IHJlcGVhdGVkIHJlcXVlc3Qgc2VuZGlu
Zy4gVGVzdCBwYXNzZXMgaWYgdGhlIHJlcXVlc3QgcmV0dXJucyB3aXRob3V0IGRpc3BsYXlpbmcg
YXV0aGVudGljYXRpb24gY2FsbGVuZ2UgVUkuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworUEFTUyAoKSA9PiB4aHIuc3RhdHVzIGlzIDQwMQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2h0dHAv
dGVzdHMveG1saHR0cHJlcXVlc3QvdW5hdXRob3JpemVkLXdpdGhvdXQtYXV0aGVudGljYXRlLWhl
YWRlci5odG1sIGIvTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC91bmF1dGhv
cml6ZWQtd2l0aG91dC1hdXRoZW50aWNhdGUtaGVhZGVyLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAuLjMxOGExZTRmZGUyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy94bWxodHRwcmVxdWVzdC91bmF1dGhvcml6ZWQtd2l0aG91dC1h
dXRoZW50aWNhdGUtaGVhZGVyLmh0bWwKQEAgLTAsMCArMSwzMCBAQAorPCFET0NUWVBFIGh0bWw+
Cis8aHRtbD4KKzxoZWFkPgorICAgIDxzY3JpcHQgc3JjPSIvanMtdGVzdC1yZXNvdXJjZXMvanMt
dGVzdC5qcyI+PC9zY3JpcHQ+CisgICAgPHNjcmlwdD4KKyAgICAgICAgZnVuY3Rpb24gZG9UZXN0
KCkgeworICAgICAgICAgICAgZGVzY3JpcHRpb24oYFRoaXMgdGVzdHMgdGhhdCB0aGUgcmVxdWVz
dCBkb2Vzbid0IHNlbmRzIGFub3RoZXIgcmVxdWVzdCBmb3IgNDAxIHJlc3BvbnNlCisgICAgICAg
ICAgICAgICAgICAgICAgICB3aXRob3V0IHd3dy1hdXRoZW50aWNhdGUgaGVhZGVyLiBJZiBpdCBk
b2VzLCB0aGUgcmVxdWVzdCBuZXZlciBzdG9wcyBieQorICAgICAgICAgICAgICAgICAgICAgICAg
cmVwZWF0ZWQgcmVxdWVzdCBzZW5kaW5nLiBUZXN0IHBhc3NlcyBpZiB0aGUgcmVxdWVzdCByZXR1
cm5zIHdpdGhvdXQgCisgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5aW5nIGF1dGhlbnRp
Y2F0aW9uIGNhbGxlbmdlIFVJLmApOworICAgICAgICAgICAgd2luZG93LmpzVGVzdElzQXN5bmMg
PSB0cnVlOworCisgICAgICAgICAgICBjb25zdCB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsK
KyAgICAgICAgICAgIHhoci5vbmxvYWQgPSB4aHIub25lcnJvciA9IGZ1bmN0aW9uKCkgeworICAg
ICAgICAgICAgICAgIHNob3VsZEJlKCgpID0+IHhoci5zdGF0dXMsICI0MDEiKTsKKyAgICAgICAg
ICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgeGhy
Lm9wZW4oJ0dFVCcsICdyZXNvdXJjZXMvbm8tYXV0aGVudGljYXRlLWhlYWRlci00MDEucGhwJyk7
CisgICAgICAgICAgICB4aHIuc2VuZChudWxsKTsKKyAgICAgICAgfQorICAgIDwvc2NyaXB0Pgor
PC9oZWFkPgorCis8Ym9keSBvbmxvYWQ9ImRvVGVzdCgpIj4KKyAgICA8ZGl2IGlkPSJkZXNjcmlw
dGlvbiI+PC9kaXY+CisgICAgPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8L2JvZHk+CisKKzwv
aHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzFlMWJkYzNj
N2MuLjM4NjQ2Mjk1MTIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTgtMDktMDcg
IEJhc3VrZSBTdXp1a2kgIDxCYXN1a2UuU3V6dWtpQHNvbnkuY29tPgorCisgICAgICAgIFtDdXJs
XSBTdG9wIHNlbmRpbmcgcmVxdWVzdCB3aXRoIGNyZWRlbnRpYWwgaWYgbm8gYXV0aG9yaXphdGlv
biByZXF1ZXN0ZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xODkwNTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBXaGVuIDQwMSByZXNwb25zZSByZXR1cm5zIHdpdGhvdXQgJ3d3dy1hdXRoZW50aWNhdGUn
IGhlYWRlciwgc3VwcHJlc3MgYW5vdGhlciByZXF1ZXN0IHdpdGggY3JlZGVudGlhbC4KKworICAg
ICAgICBUZXN0OiBodHRwL3Rlc3RzL3htbGh0dHByZXF1ZXN0L3VuYXV0aG9yaXplZC13aXRob3V0
LWF1dGhlbnRpY2F0ZS1oZWFkZXIuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9j
dXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkN1
cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlOjpjdXJsRGlkUmVjZWl2ZVJlc3BvbnNlKToKKwogMjAx
OC0wOS0wNyAgWmFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNd
IFJlcGxhY2UgImNvbXB1dGVkIiB2YWx1ZSB3aXRoICJ1c2VkIiB2YWx1ZSB0byBtYXRjaCBzcGVj
IGxhbmd1YWdlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRlLmNwcAppbmRleCA2YTA2
ZjE5ZDI4Ny4uY2Y4ZTk5ZmFjZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvY3VybC9DdXJsUmVzb3VyY2VIYW5kbGVEZWxlZ2F0ZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXNvdXJjZUhhbmRsZURlbGVnYXRl
LmNwcApAQCAtMTE5LDcgKzExOSw3IEBAIHZvaWQgQ3VybFJlc291cmNlSGFuZGxlRGVsZWdhdGU6
OmN1cmxEaWRSZWNlaXZlUmVzcG9uc2UoQ3VybFJlcXVlc3QmIHJlcXVlc3QsIGNvCiAgICAgICAg
IHJldHVybjsKICAgICB9CiAKLSAgICBpZiAobV9yZXNwb25zZS5pc1VuYXV0aG9yaXplZCgpKSB7
CisgICAgaWYgKG1fcmVzcG9uc2UuaXNVbmF1dGhvcml6ZWQoKSAmJiByZWNlaXZlZFJlc3BvbnNl
LmF2YWlsYWJsZUh0dHBBdXRoKSB7CiAgICAgICAgIEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlIGNo
YWxsZW5nZShyZWNlaXZlZFJlc3BvbnNlLCBkKCktPm1fYXV0aEZhaWx1cmVDb3VudCwgbV9yZXNw
b25zZSwgJm1faGFuZGxlKTsKICAgICAgICAgbV9oYW5kbGUuZGlkUmVjZWl2ZUF1dGhlbnRpY2F0
aW9uQ2hhbGxlbmdlKGNoYWxsZW5nZSk7CiAgICAgICAgIGQoKS0+bV9hdXRoRmFpbHVyZUNvdW50
Kys7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Q2hhbmdlTG9nCmluZGV4IDJlNzk3MDc5OGY1Li5hMDc0NTJiNGIzMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxOC0wOS0wNyAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29u
eS5jb20+CisKKyAgICAgICAgW0N1cmxdIFN0b3Agc2VuZGluZyByZXF1ZXN0IHdpdGggY3JlZGVu
dGlhbCBpZiBubyBhdXRob3JpemF0aW9uIHJlcXVlc3RlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4OTA1NworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gNDAxIHJlc3BvbnNlIHJldHVybnMgd2l0
aG91dCAnd3d3LWF1dGhlbnRpY2F0ZScgaGVhZGVyLCBzdXBwcmVzcyBhbm90aGVyIHJlcXVlc3Qg
d2l0aCBjcmVkZW50aWFsLgorICAgICAgICBTYW1lIGZpeCBmb3IgcHJveHkgYXV0aGVudGljYXRp
b24uCisKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrRGF0YVRhc2tDdXJsOjpjdXJsRGlkUmVjZWl2
ZVJlc3BvbnNlKToKKwogMjAxOC0wOS0wNyAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxl
LmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIHN5bnRheCBmaXggYWZ0ZXIgcjIzNTc4MQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFz
a0N1cmwuY3BwIGIvU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRh
VGFza0N1cmwuY3BwCmluZGV4IGE5MDM1Njk1YmI4Li5mN2Q0OWMyODJiMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9jdXJsL05ldHdvcmtEYXRhVGFza0N1cmwuY3Bw
CisrKyBiL1NvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvY3VybC9OZXR3b3JrRGF0YVRhc2tD
dXJsLmNwcApAQCAtMTYxLDEzICsxNjEsMTMgQEAgdm9pZCBOZXR3b3JrRGF0YVRhc2tDdXJsOjpj
dXJsRGlkUmVjZWl2ZVJlc3BvbnNlKEN1cmxSZXF1ZXN0JiByZXF1ZXN0LCBjb25zdCBDdXIKICAg
ICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX3Jlc3BvbnNlLmlzVW5hdXRob3JpemVk
KCkpIHsKKyAgICBpZiAobV9yZXNwb25zZS5pc1VuYXV0aG9yaXplZCgpICYmIHJlY2VpdmVkUmVz
cG9uc2UuYXZhaWxhYmxlSHR0cEF1dGgpIHsKICAgICAgICAgdHJ5SHR0cEF1dGhlbnRpY2F0aW9u
KEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKHJlY2VpdmVkUmVzcG9uc2UsIG1fYXV0aEZhaWx1cmVD
b3VudCwgbV9yZXNwb25zZSkpOwogICAgICAgICBtX2F1dGhGYWlsdXJlQ291bnQrKzsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIGlmIChtX3Jlc3BvbnNlLmlzUHJveHlBdXRoZW50aWNh
dGlvblJlcXVpcmVkKCkpIHsKKyAgICBpZiAobV9yZXNwb25zZS5pc1Byb3h5QXV0aGVudGljYXRp
b25SZXF1aXJlZCgpICYmIHJlY2VpdmVkUmVzcG9uc2UuYXZhaWxhYmxlUHJveHlBdXRoKSB7CiAg
ICAgICAgIHRyeVByb3h5QXV0aGVudGljYXRpb24oQXV0aGVudGljYXRpb25DaGFsbGVuZ2UocmVj
ZWl2ZWRSZXNwb25zZSwgMCwgbV9yZXNwb25zZSkpOwogICAgICAgICByZXR1cm47CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>