<?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>200150</bug_id>
          
          <creation_ts>2019-07-25 19:47:11 -0700</creation_ts>
          <short_desc>NavigationSOAuthorizationSession should check the active URL of the responding page after waking up from waiting</short_desc>
          <delta_ts>2019-07-26 17:03:51 -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>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="Jiewen Tan">jiewen_tan</reporter>
          <assigned_to name="Jiewen Tan">jiewen_tan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jiewen_tan</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1556008</commentid>
    <comment_count>0</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2019-07-25 19:47:11 -0700</bug_when>
    <thetext>NavigationSOAuthorizationSession should check the active URL of the responding page after waking up from waiting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556009</commentid>
    <comment_count>1</comment_count>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2019-07-25 19:48:01 -0700</bug_when>
    <thetext>&lt;rdar://problem/53280170&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556010</commentid>
    <comment_count>2</comment_count>
      <attachid>374933</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2019-07-25 19:51:17 -0700</bug_when>
    <thetext>Created attachment 374933
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556246</commentid>
    <comment_count>3</comment_count>
      <attachid>374933</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2019-07-26 14:59:20 -0700</bug_when>
    <thetext>Comment on attachment 374933
Patch

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

&gt; Source/WebKit/UIProcess/Cocoa/SOAuthorization/NavigationSOAuthorizationSession.mm:70
&gt; +    // When the current main frame URL is different from the before one,

I think it might be simpler to say:

&quot;// When the current main frame URL has changed from the start of authentication, the SOAuthorization is no longer valid.&quot;

Even better would be to make a method:

bool NavigationSOAuthorizationSession::mainFrameURLDidChangeDuringAuthentication()
{
    auto* page = this-&gt;page();
    return !page || page-&gt;pageLoadState().activeURL() != m_waitingPageActiveURL;
}

&gt; Source/WebKit/UIProcess/Cocoa/SOAuthorization/NavigationSOAuthorizationSession.mm:72
&gt; +    if (page-&gt;pageLoadState().activeURL() != m_waitingPageActiveURL) {

Then this just becomes:

if (mainFrameURLDidChangeDuringAuthentication()) {
    abort();
...

And you don&apos;t need a comment. :-)

&gt; Source/WebKit/UIProcess/Cocoa/SOAuthorization/SubFrameSOAuthorizationSession.mm:-79
&gt; -    ASSERT_NOT_REACHED();

Why is it okay to remove this assertion? Is it because we now expect to abort if the URL changed during authentication?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556248</commentid>
    <comment_count>4</comment_count>
      <attachid>374933</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2019-07-26 15:22:20 -0700</bug_when>
    <thetext>Comment on attachment 374933
Patch

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

Thanks Brent for r+ this patch.

&gt;&gt; Source/WebKit/UIProcess/Cocoa/SOAuthorization/NavigationSOAuthorizationSession.mm:70
&gt;&gt; +    // When the current main frame URL is different from the before one,
&gt; 
&gt; I think it might be simpler to say:
&gt; 
&gt; &quot;// When the current main frame URL has changed from the start of authentication, the SOAuthorization is no longer valid.&quot;
&gt; 
&gt; Even better would be to make a method:
&gt; 
&gt; bool NavigationSOAuthorizationSession::mainFrameURLDidChangeDuringAuthentication()
&gt; {
&gt;     auto* page = this-&gt;page();
&gt;     return !page || page-&gt;pageLoadState().activeURL() != m_waitingPageActiveURL;
&gt; }

Fixed.

&gt;&gt; Source/WebKit/UIProcess/Cocoa/SOAuthorization/NavigationSOAuthorizationSession.mm:72
&gt;&gt; +    if (page-&gt;pageLoadState().activeURL() != m_waitingPageActiveURL) {
&gt; 
&gt; Then this just becomes:
&gt; 
&gt; if (mainFrameURLDidChangeDuringAuthentication()) {
&gt;     abort();
&gt; ...
&gt; 
&gt; And you don&apos;t need a comment. :-)

Named it pageActiveURLDidChangeDuringWaiting.

&gt;&gt; Source/WebKit/UIProcess/Cocoa/SOAuthorization/SubFrameSOAuthorizationSession.mm:-79
&gt;&gt; -    ASSERT_NOT_REACHED();
&gt; 
&gt; Why is it okay to remove this assertion? Is it because we now expect to abort if the URL changed during authentication?

Yes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556251</commentid>
    <comment_count>5</comment_count>
      <attachid>374991</attachid>
    <who name="Jiewen Tan">jiewen_tan</who>
    <bug_when>2019-07-26 15:26:00 -0700</bug_when>
    <thetext>Created attachment 374991
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1556292</commentid>
    <comment_count>6</comment_count>
      <attachid>374991</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-26 17:03:51 -0700</bug_when>
    <thetext>Comment on attachment 374991
Patch for landing

Clearing flags on attachment: 374991

Committed r247885: &lt;https://trac.webkit.org/changeset/247885&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374933</attachid>
            <date>2019-07-25 19:51:17 -0700</date>
            <delta_ts>2019-07-26 14:59:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200150-20190725195116.patch</filename>
            <type>text/plain</type>
            <size>7869</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3ODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQ2NDNhZmIzMjMwYjc5ODQ1
NmM5MDc0N2E5ZTA5ODkyM2FmN2I4MmMuLmQ4ZjUzYTU1NzVlMGE5NDkwMDM5M2ZhODc5NTAyYmIz
ZjIwODNkNGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTktMDctMjUgIEppZXdlbiBU
YW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KKworICAgICAgICBOYXZpZ2F0aW9uU09BdXRob3Jp
emF0aW9uU2Vzc2lvbiBzaG91bGQgY2hlY2sgdGhlIGFjdGl2ZSBVUkwgb2YgdGhlIHJlc3BvbmRp
bmcgcGFnZSBhZnRlciB3YWtpbmcgdXAgZnJvbSB3YWl0aW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDAxNTAKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzUzMjgwMTcwPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIE5hdmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uIHNob3VsZCBjaGVjayB0aGUg
YWN0aXZlIFVSTCBvZiB0aGUgcmVzcG9uZGluZyBwYWdlIGFmdGVyIHdha2luZyB1cCBmcm9tIHdh
aXRpbmcKKyAgICAgICAgYXMgdGhlIHBhZ2UgbWlnaHQgaGF2ZSBhbHJlYWR5IGNoYW5nZWQgdGhl
IGxvY2F0aW9uLgorCisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1NPQXV0aG9yaXphdGlvbi9O
YXZpZ2F0aW9uU09BdXRob3JpemF0aW9uU2Vzc2lvbi5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9D
b2NvYS9TT0F1dGhvcml6YXRpb24vTmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNlc3Npb24ubW06
CisgICAgICAgIChXZWJLaXQ6Ok5hdmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uOjpzaG91
bGRTdGFydEludGVybmFsKToKKyAgICAgICAgKFdlYktpdDo6TmF2aWdhdGlvblNPQXV0aG9yaXph
dGlvblNlc3Npb246OndlYlZpZXdEaWRNb3ZlVG9XaW5kb3cpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9Db2NvYS9TT0F1dGhvcml6YXRpb24vU3ViRnJhbWVTT0F1dGhvcml6YXRpb25TZXNzaW9uLm1t
OgorICAgICAgICAoV2ViS2l0OjpTdWJGcmFtZVNPQXV0aG9yaXphdGlvblNlc3Npb246OmFib3J0
SW50ZXJuYWwpOgorCiAyMDE5LTA3LTI1ICBKaWV3ZW4gVGFuICA8amlld2VuX3RhbkBhcHBsZS5j
b20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgYnVpbGQgZml4IGFmdGVyIHIyNDc4NTEKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1NPQXV0aG9yaXphdGlvbi9OYXZp
Z2F0aW9uU09BdXRob3JpemF0aW9uU2Vzc2lvbi5oIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q29jb2EvU09BdXRob3JpemF0aW9uL05hdmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uLmgK
aW5kZXggOWEwMmYwNTg1MTljZjE5NzUzZWIyMjNlMjQzYWE0NGQxOTcwYmMxMi4uMDg4NWYxNGNk
ZmNiNjgyNmVkZjFkYmY1MTBiNDFjN2UyNGJmMTlmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvU09BdXRob3JpemF0aW9uL05hdmlnYXRpb25TT0F1dGhvcml6YXRp
b25TZXNzaW9uLmgKKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvU09BdXRob3Jp
emF0aW9uL05hdmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uLmgKQEAgLTMwLDYgKzMwLDcg
QEAKICNpbmNsdWRlICJTT0F1dGhvcml6YXRpb25TZXNzaW9uLmgiCiAjaW5jbHVkZSAiV2ViVmll
d0RpZE1vdmVUb1dpbmRvd09ic2VydmVyLmgiCiAjaW5jbHVkZSA8d3RmL0NvbXBsZXRpb25IYW5k
bGVyLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJL
aXQgewogCkBAIC02Myw2ICs2NCw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGJlZm9y
ZVN0YXJ0KCkgPSAwOwogCiAgICAgQ2FsbGJhY2sgbV9jYWxsYmFjazsKKyAgICBTdHJpbmcgbV93
YWl0aW5nUGFnZUFjdGl2ZVVSTDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvU09BdXRob3JpemF0aW9uL05hdmln
YXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
Q29jb2EvU09BdXRob3JpemF0aW9uL05hdmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uLm1t
CmluZGV4IDIyMDNkMWE0ZDEzM2I0MmMyNjI2YzQ0N2I1OTNlM2U1MjgxZGE5NjkuLmUwMzgzNzIy
NzMyMGNiNWM3MDQyZjVlNTA1OTVjYTc4YjFjOTgzNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0NvY29hL1NPQXV0aG9yaXphdGlvbi9OYXZpZ2F0aW9uU09BdXRob3JpemF0
aW9uU2Vzc2lvbi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9TT0F1dGhv
cml6YXRpb24vTmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNlc3Npb24ubW0KQEAgLTU1LDYgKzU1
LDggQEAgdm9pZCBOYXZpZ2F0aW9uU09BdXRob3JpemF0aW9uU2Vzc2lvbjo6c2hvdWxkU3RhcnRJ
bnRlcm5hbCgpCiAgICAgaWYgKCFwYWdlLT5pc0luV2luZG93KCkpIHsKICAgICAgICAgc2V0U3Rh
dGUoU3RhdGU6OldhaXRpbmcpOwogICAgICAgICBwYWdlLT5hZGRPYnNlcnZlcigqdGhpcyk7Cisg
ICAgICAgIEFTU0VSVChwYWdlLT5tYWluRnJhbWUoKSk7CisgICAgICAgIG1fd2FpdGluZ1BhZ2VB
Y3RpdmVVUkwgPSBwYWdlLT5wYWdlTG9hZFN0YXRlKCkuYWN0aXZlVVJMKCk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CiAgICAgc3RhcnQoKTsKQEAgLTY1LDYgKzY3LDEzIEBAIHZvaWQgTmF2aWdh
dGlvblNPQXV0aG9yaXphdGlvblNlc3Npb246OndlYlZpZXdEaWRNb3ZlVG9XaW5kb3coKQogICAg
IGF1dG8qIHBhZ2UgPSB0aGlzLT5wYWdlKCk7CiAgICAgaWYgKHN0YXRlKCkgIT0gU3RhdGU6Oldh
aXRpbmcgfHwgIXBhZ2UgfHwgIXBhZ2UtPmlzSW5XaW5kb3coKSkKICAgICAgICAgcmV0dXJuOwor
ICAgIC8vIFdoZW4gdGhlIGN1cnJlbnQgbWFpbiBmcmFtZSBVUkwgaXMgZGlmZmVyZW50IGZyb20g
dGhlIGJlZm9yZSBvbmUsCisgICAgLy8gaXQgbWVhbnMgdGhlIFNPQXV0aG9yaXphdGlvbiBpcyBu
byBsb25nZXIgdmFsaWQuCisgICAgaWYgKHBhZ2UtPnBhZ2VMb2FkU3RhdGUoKS5hY3RpdmVVUkwo
KSAhPSBtX3dhaXRpbmdQYWdlQWN0aXZlVVJMKSB7CisgICAgICAgIGFib3J0KCk7CisgICAgICAg
IHBhZ2UtPnJlbW92ZU9ic2VydmVyKCp0aGlzKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KICAg
ICBzdGFydCgpOwogICAgIHBhZ2UtPnJlbW92ZU9ic2VydmVyKCp0aGlzKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1NPQXV0aG9yaXphdGlvbi9TdWJGcmFt
ZVNPQXV0aG9yaXphdGlvblNlc3Npb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2Nv
YS9TT0F1dGhvcml6YXRpb24vU3ViRnJhbWVTT0F1dGhvcml6YXRpb25TZXNzaW9uLm1tCmluZGV4
IGFhMTRiYzM0MWEwZjFjMDk1MzhjMTYxMjVmZmMyOTI1NjJlMGQxMjAuLjBjYmVmMGQxZGQ0ZGVk
YTQ0OGM1ZGQ2YmFkNzM0YTQwZDQ1MTNlNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1NPQXV0aG9yaXphdGlvbi9TdWJGcmFtZVNPQXV0aG9yaXphdGlvblNlc3Np
b24ubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvU09BdXRob3JpemF0aW9u
L1N1YkZyYW1lU09BdXRob3JpemF0aW9uU2Vzc2lvbi5tbQpAQCAtNzYsNyArNzYsNiBAQCB2b2lk
IFN1YkZyYW1lU09BdXRob3JpemF0aW9uU2Vzc2lvbjo6ZmFsbEJhY2tUb1dlYlBhdGhJbnRlcm5h
bCgpCiAKIHZvaWQgU3ViRnJhbWVTT0F1dGhvcml6YXRpb25TZXNzaW9uOjphYm9ydEludGVybmFs
KCkKIHsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKIH0KIAogdm9pZCBTdWJGcmFtZVNPQXV0
aG9yaXphdGlvblNlc3Npb246OmNvbXBsZXRlSW50ZXJuYWwoY29uc3QgV2ViQ29yZTo6UmVzb3Vy
Y2VSZXNwb25zZSYgcmVzcG9uc2UsIE5TRGF0YSAqZGF0YSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0No
YW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBjNDk3ZmUyYmYyODhjZjI1NGVmZGRkYTc1
MzI1ZTMyZmRmMjVkYzkyLi45N2VjZmRmZTgwYjFhNTU1NTFlZTBlYjYwNWRkM2ZkYTE3NzY0ZDMz
IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTQgQEAKKzIwMTktMDctMjUgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNv
bT4KKworICAgICAgICBOYXZpZ2F0aW9uU09BdXRob3JpemF0aW9uU2Vzc2lvbiBzaG91bGQgY2hl
Y2sgdGhlIGFjdGl2ZSBVUkwgb2YgdGhlIHJlc3BvbmRpbmcgcGFnZSBhZnRlciB3YWtpbmcgdXAg
ZnJvbSB3YWl0aW5nCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMDAxNTAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzUzMjgwMTcwPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXRDb2NvYS9UZXN0U09BdXRob3JpemF0aW9uLm1tOgorICAgICAgICAoVGVzdFdl
YktpdEFQSTo6VEVTVCk6CisKIDIwMTktMDctMjQgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFw
cGxlLmNvbT4KIAogICAgICAgICBXZWJQYWdlUHJveHk6OnJlY2VpdmVkUG9saWN5RGVjaXNpb24g
c2hvdWxkIGNoZWNrIG5hdmlnYXRpb24gSUQgYmVmb3JlIGNsZWFyIHBlbmRpbmdBUElSZXF1ZXN0
CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1Rlc3RT
T0F1dGhvcml6YXRpb24ubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29h
L1Rlc3RTT0F1dGhvcml6YXRpb24ubW0KaW5kZXggYWQyOTJkYWU0ODRmZmNmNGRlMzE5ZmUyZGM5
NjA5NGIzN2MxYThmNi4uZjRhYjNlZWNiNzAwZWQwNTJiNzI4ZTFkMDE1ZjIyNDVhYzMzOTViMSAx
MDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9UZXN0U09B
dXRob3JpemF0aW9uLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29j
b2EvVGVzdFNPQXV0aG9yaXphdGlvbi5tbQpAQCAtNzYxLDcgKzc2MSw3IEBAIFRFU1QoU09BdXRo
b3JpemF0aW9uUmVkaXJlY3QsIEludGVyY2VwdGlvblN1Y2NlZWRXaXRoV2FpdGluZ1Nlc3Npb24p
CiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0U09BdXRob3JpemF0aW9uRGVsZWdh
dGUgYWxsb2NdIGluaXRdKTsKICAgICBjb25maWd1cmVTT0F1dGhvcml6YXRpb25XZWJWaWV3KHdl
YlZpZXcuZ2V0KCksIGRlbGVnYXRlLmdldCgpLCBPcGVuRXh0ZXJuYWxTY2hlbWVzUG9saWN5OjpB
bGxvdyk7CiAKLSAgICAvLyBUaGUgc2Vzc2lvbiB3aWxsIGJlIHdhaXRpbmcgc2luY2UgdGhlIHdl
YiB2aWV3IGlzIGlzIG5vdCBpbnQgdGhlIHdpbmRvdy4KKyAgICAvLyBUaGUgc2Vzc2lvbiB3aWxs
IGJlIHdhaXRpbmcgc2luY2UgdGhlIHdlYiB2aWV3IGlzIGlzIG5vdCBpbiB0aGUgd2luZG93Lgog
ICAgIFt3ZWJWaWV3IHJlbW92ZUZyb21TdXBlcnZpZXddOwogICAgIFt3ZWJWaWV3IGxvYWRSZXF1
ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5nZXQoKV1dOwogICAgIFV0
aWw6OnNsZWVwKDAuNSk7CkBAIC03ODMsNiArNzgzLDM1IEBAIFRFU1QoU09BdXRob3JpemF0aW9u
UmVkaXJlY3QsIEludGVyY2VwdGlvblN1Y2NlZWRXaXRoV2FpdGluZ1Nlc3Npb24pCiAgICAgRVhQ
RUNUX1dLX1NUUkVRKHJlZGlyZWN0VVJMLmdldCgpLmFic29sdXRlU3RyaW5nLCBmaW5hbFVSTCk7
CiB9CiAKK1RFU1QoU09BdXRob3JpemF0aW9uUmVkaXJlY3QsIEludGVyY2VwdGlvbkFib3J0ZWRX
aXRoV2FpdGluZ1Nlc3Npb24pCit7CisgICAgcmVzZXRTdGF0ZSgpOworICAgIENsYXNzTWV0aG9k
U3dpenpsZXIgc3dpenpsZXIxKFBBTDo6Z2V0U09BdXRob3JpemF0aW9uQ2xhc3MoKSwgQHNlbGVj
dG9yKGNhblBlcmZvcm1BdXRob3JpemF0aW9uV2l0aFVSTDpyZXNwb25zZUNvZGU6KSwgcmVpbnRl
cnByZXRfY2FzdDxJTVA+KG92ZXJyaWRlQ2FuUGVyZm9ybUF1dGhvcml6YXRpb25XaXRoVVJMKSk7
CisgICAgSW5zdGFuY2VNZXRob2RTd2l6emxlciBzd2l6emxlcjIoUEFMOjpnZXRTT0F1dGhvcml6
YXRpb25DbGFzcygpLCBAc2VsZWN0b3Ioc2V0RGVsZWdhdGU6KSwgcmVpbnRlcnByZXRfY2FzdDxJ
TVA+KG92ZXJyaWRlU2V0RGVsZWdhdGUpKTsKKyAgICBJbnN0YW5jZU1ldGhvZFN3aXp6bGVyIHN3
aXp6bGVyMyhQQUw6OmdldFNPQXV0aG9yaXphdGlvbkNsYXNzKCksIEBzZWxlY3RvcihiZWdpbkF1
dGhvcml6YXRpb25XaXRoVVJMOmh0dHBIZWFkZXJzOmh0dHBCb2R5OiksIHJlaW50ZXJwcmV0X2Nh
c3Q8SU1QPihvdmVycmlkZUJlZ2luQXV0aG9yaXphdGlvbldpdGhVUkwpKTsKKworICAgIFJldGFp
blB0cjxOU1VSTD4gdGVzdFVSTDEgPSBbW05TQnVuZGxlIG1haW5CdW5kbGVdIFVSTEZvclJlc291
cmNlOkAic2ltcGxlIiB3aXRoRXh0ZW5zaW9uOkAiaHRtbCIgc3ViZGlyZWN0b3J5OkAiVGVzdFdl
YktpdEFQSS5yZXNvdXJjZXMiXTsKKyAgICBSZXRhaW5QdHI8TlNVUkw+IHRlc3RVUkwyID0gW1tO
U0J1bmRsZSBtYWluQnVuZGxlXSBVUkxGb3JSZXNvdXJjZTpAInNpbXBsZTIiIHdpdGhFeHRlbnNp
b246QCJodG1sIiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJlc291cmNlcyJdOworCisg
ICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCAzMjAsIDUwMCldKTsKKyAgICBhdXRvIGRlbGVnYXRlID0g
YWRvcHROUyhbW1Rlc3RTT0F1dGhvcml6YXRpb25EZWxlZ2F0ZSBhbGxvY10gaW5pdF0pOworICAg
IGNvbmZpZ3VyZVNPQXV0aG9yaXphdGlvbldlYlZpZXcod2ViVmlldy5nZXQoKSwgZGVsZWdhdGUu
Z2V0KCksIE9wZW5FeHRlcm5hbFNjaGVtZXNQb2xpY3k6OkFsbG93KTsKKworICAgIC8vIFRoZSBz
ZXNzaW9uIHdpbGwgYmUgd2FpdGluZyBzaW5jZSB0aGUgd2ViIHZpZXcgaXMgaXMgbm90IGluIHRo
ZSB3aW5kb3cuCisgICAgW3dlYlZpZXcgcmVtb3ZlRnJvbVN1cGVydmlld107CisgICAgW3dlYlZp
ZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMMS5nZXQo
KV1dOworICAgIFV0aWw6OnNsZWVwKDAuNSk7CisgICAgRVhQRUNUX0ZBTFNFKGF1dGhvcml6YXRp
b25QZXJmb3JtZWQpOworCisgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCBy
ZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMMi5nZXQoKV1dOworICAgIC8vIFNob3VsZCBhY3RpdmF0ZSB0
aGUgc2Vzc2lvbi4KKyAgICBbd2ViVmlldyBhZGRUb1Rlc3RXaW5kb3ddOworCisgICAgLy8gVGhl
IHdhaXRpbmcgc2Vzc2lvbiBzaG91bGQgYmUgYWJvcnRlZCBhcyB0aGUgcHJldmlvdXMgbmF2aWdh
dGlvbiBpcyBvdmVyd3JpdHRlbiBieSBhIG5ldyBuYXZpZ2F0aW9uLgorICAgIFV0aWw6OnJ1bigm
bmF2aWdhdGlvbkNvbXBsZXRlZCk7CisgICAgRVhQRUNUX0ZBTFNFKGF1dGhvcml6YXRpb25QZXJm
b3JtZWQpOworfQorCiBURVNUKFNPQXV0aG9yaXphdGlvblJlZGlyZWN0LCBJbnRlcmNlcHRpb25T
dWNjZWVkV2l0aEFjdGl2ZVNlc3Npb25EaWRNb3ZlV2luZG93KQogewogICAgIHJlc2V0U3RhdGUo
KTsK
</data>
<flag name="review"
          id="390720"
          type_id="1"
          status="+"
          setter="bfulgham"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374991</attachid>
            <date>2019-07-26 15:26:00 -0700</date>
            <delta_ts>2019-07-26 17:03:51 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-200150-20190726152559.patch</filename>
            <type>text/plain</type>
            <size>8112</size>
            <attacher name="Jiewen Tan">jiewen_tan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3ODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGQ2NDNhZmIzMjMwYjc5ODQ1
NmM5MDc0N2E5ZTA5ODkyM2FmN2I4MmMuLmY1OWYzNjRkNmE0NmM2OWY1ZjRiNDE5YTg4ZDBiMmM3
NTdkNDYzOWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTktMDctMjUgIEppZXdlbiBU
YW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KKworICAgICAgICBOYXZpZ2F0aW9uU09BdXRob3Jp
emF0aW9uU2Vzc2lvbiBzaG91bGQgY2hlY2sgdGhlIGFjdGl2ZSBVUkwgb2YgdGhlIHJlc3BvbmRp
bmcgcGFnZSBhZnRlciB3YWtpbmcgdXAgZnJvbSB3YWl0aW5nCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDAxNTAKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzUzMjgwMTcwPgorCisgICAgICAgIFJldmlld2VkIGJ5IEJyZW50IEZ1bGdoYW0uCisKKyAg
ICAgICAgTmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNlc3Npb24gc2hvdWxkIGNoZWNrIHRoZSBh
Y3RpdmUgVVJMIG9mIHRoZSByZXNwb25kaW5nIHBhZ2UgYWZ0ZXIgd2FraW5nIHVwIGZyb20gd2Fp
dGluZworICAgICAgICBhcyB0aGUgcGFnZSBtaWdodCBoYXZlIGFscmVhZHkgY2hhbmdlZCB0aGUg
bG9jYXRpb24uCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvU09BdXRob3JpemF0aW9uL05h
dmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL0Nv
Y29hL1NPQXV0aG9yaXphdGlvbi9OYXZpZ2F0aW9uU09BdXRob3JpemF0aW9uU2Vzc2lvbi5tbToK
KyAgICAgICAgKFdlYktpdDo6TmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNlc3Npb246OnNob3Vs
ZFN0YXJ0SW50ZXJuYWwpOgorICAgICAgICAoV2ViS2l0OjpOYXZpZ2F0aW9uU09BdXRob3JpemF0
aW9uU2Vzc2lvbjo6d2ViVmlld0RpZE1vdmVUb1dpbmRvdyk6CisgICAgICAgIChXZWJLaXQ6Ok5h
dmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uOjpwYWdlQWN0aXZlVVJMRGlkQ2hhbmdlRHVy
aW5nV2FpdGluZyBjb25zdCk6CisgICAgICAgICogVUlQcm9jZXNzL0NvY29hL1NPQXV0aG9yaXph
dGlvbi9TdWJGcmFtZVNPQXV0aG9yaXphdGlvblNlc3Npb24ubW06CisgICAgICAgIChXZWJLaXQ6
OlN1YkZyYW1lU09BdXRob3JpemF0aW9uU2Vzc2lvbjo6YWJvcnRJbnRlcm5hbCk6CisKIDIwMTkt
MDctMjUgIEppZXdlbiBUYW4gIDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJl
dmlld2VkLCBidWlsZCBmaXggYWZ0ZXIgcjI0Nzg1MQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvU09BdXRob3JpemF0aW9uL05hdmlnYXRpb25TT0F1dGhvcml6YXRp
b25TZXNzaW9uLmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9TT0F1dGhvcml6YXRp
b24vTmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNlc3Npb24uaAppbmRleCA5YTAyZjA1ODUxOWNm
MTk3NTNlYjIyM2UyNDNhYTQ0ZDE5NzBiYzEyLi43Yzg0ZmVjNzU5YWIyNDY4Y2I0ZTdkMGMxYThm
YWJkYjUzYTU4ZWZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9T
T0F1dGhvcml6YXRpb24vTmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNlc3Npb24uaAorKysgYi9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9TT0F1dGhvcml6YXRpb24vTmF2aWdhdGlvblNP
QXV0aG9yaXphdGlvblNlc3Npb24uaApAQCAtMzAsNiArMzAsNyBAQAogI2luY2x1ZGUgIlNPQXV0
aG9yaXphdGlvblNlc3Npb24uaCIKICNpbmNsdWRlICJXZWJWaWV3RGlkTW92ZVRvV2luZG93T2Jz
ZXJ2ZXIuaCIKICNpbmNsdWRlIDx3dGYvQ29tcGxldGlvbkhhbmRsZXIuaD4KKyNpbmNsdWRlIDx3
dGYvdGV4dC9XVEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7CiAKQEAgLTYyLDcgKzYz
LDEwIEBAIHByaXZhdGU6CiAKICAgICB2aXJ0dWFsIHZvaWQgYmVmb3JlU3RhcnQoKSA9IDA7CiAK
KyAgICBib29sIHBhZ2VBY3RpdmVVUkxEaWRDaGFuZ2VEdXJpbmdXYWl0aW5nKCkgY29uc3Q7CisK
ICAgICBDYWxsYmFjayBtX2NhbGxiYWNrOworICAgIFN0cmluZyBtX3dhaXRpbmdQYWdlQWN0aXZl
VVJMOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9Db2NvYS9TT0F1dGhvcml6YXRpb24vTmF2aWdhdGlvblNPQXV0aG9yaXph
dGlvblNlc3Npb24ubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9TT0F1dGhvcml6
YXRpb24vTmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNlc3Npb24ubW0KaW5kZXggMjIwM2QxYTRk
MTMzYjQyYzI2MjZjNDQ3YjU5M2UzZTUyODFkYTk2OS4uM2RhZGU0NGQ1NTI1Y2MxMjkxYTY2NzJh
MTk3MWMwMzc5Y2NmNjE3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29j
b2EvU09BdXRob3JpemF0aW9uL05hdmlnYXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uLm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1NPQXV0aG9yaXphdGlvbi9OYXZpZ2F0
aW9uU09BdXRob3JpemF0aW9uU2Vzc2lvbi5tbQpAQCAtNTUsNiArNTUsOCBAQCB2b2lkIE5hdmln
YXRpb25TT0F1dGhvcml6YXRpb25TZXNzaW9uOjpzaG91bGRTdGFydEludGVybmFsKCkKICAgICBp
ZiAoIXBhZ2UtPmlzSW5XaW5kb3coKSkgewogICAgICAgICBzZXRTdGF0ZShTdGF0ZTo6V2FpdGlu
Zyk7CiAgICAgICAgIHBhZ2UtPmFkZE9ic2VydmVyKCp0aGlzKTsKKyAgICAgICAgQVNTRVJUKHBh
Z2UtPm1haW5GcmFtZSgpKTsKKyAgICAgICAgbV93YWl0aW5nUGFnZUFjdGl2ZVVSTCA9IHBhZ2Ut
PnBhZ2VMb2FkU3RhdGUoKS5hY3RpdmVVUkwoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KICAg
ICBzdGFydCgpOwpAQCAtNjUsMTAgKzY3LDIxIEBAIHZvaWQgTmF2aWdhdGlvblNPQXV0aG9yaXph
dGlvblNlc3Npb246OndlYlZpZXdEaWRNb3ZlVG9XaW5kb3coKQogICAgIGF1dG8qIHBhZ2UgPSB0
aGlzLT5wYWdlKCk7CiAgICAgaWYgKHN0YXRlKCkgIT0gU3RhdGU6OldhaXRpbmcgfHwgIXBhZ2Ug
fHwgIXBhZ2UtPmlzSW5XaW5kb3coKSkKICAgICAgICAgcmV0dXJuOworICAgIGlmIChwYWdlQWN0
aXZlVVJMRGlkQ2hhbmdlRHVyaW5nV2FpdGluZygpKSB7CisgICAgICAgIGFib3J0KCk7CisgICAg
ICAgIHBhZ2UtPnJlbW92ZU9ic2VydmVyKCp0aGlzKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
ICAgICBzdGFydCgpOwogICAgIHBhZ2UtPnJlbW92ZU9ic2VydmVyKCp0aGlzKTsKIH0KIAorYm9v
bCBOYXZpZ2F0aW9uU09BdXRob3JpemF0aW9uU2Vzc2lvbjo6cGFnZUFjdGl2ZVVSTERpZENoYW5n
ZUR1cmluZ1dhaXRpbmcoKSBjb25zdAoreworICAgIGF1dG8qIHBhZ2UgPSB0aGlzLT5wYWdlKCk7
CisgICAgcmV0dXJuICFwYWdlIHx8IHBhZ2UtPnBhZ2VMb2FkU3RhdGUoKS5hY3RpdmVVUkwoKSAh
PSBtX3dhaXRpbmdQYWdlQWN0aXZlVVJMOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKIAog
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9TT0F1dGhv
cml6YXRpb24vU3ViRnJhbWVTT0F1dGhvcml6YXRpb25TZXNzaW9uLm1tIGIvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQ29jb2EvU09BdXRob3JpemF0aW9uL1N1YkZyYW1lU09BdXRob3JpemF0aW9u
U2Vzc2lvbi5tbQppbmRleCBhYTE0YmMzNDFhMGYxYzA5NTM4YzE2MTI1ZmZjMjkyNTYyZTBkMTIw
Li4wY2JlZjBkMWRkNGRlZGE0NDhjNWRkNmJhZDczNGE0MGQ0NTEzZTQ0IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9TT0F1dGhvcml6YXRpb24vU3ViRnJhbWVTT0F1
dGhvcml6YXRpb25TZXNzaW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29h
L1NPQXV0aG9yaXphdGlvbi9TdWJGcmFtZVNPQXV0aG9yaXphdGlvblNlc3Npb24ubW0KQEAgLTc2
LDcgKzc2LDYgQEAgdm9pZCBTdWJGcmFtZVNPQXV0aG9yaXphdGlvblNlc3Npb246OmZhbGxCYWNr
VG9XZWJQYXRoSW50ZXJuYWwoKQogCiB2b2lkIFN1YkZyYW1lU09BdXRob3JpemF0aW9uU2Vzc2lv
bjo6YWJvcnRJbnRlcm5hbCgpCiB7Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKIHZv
aWQgU3ViRnJhbWVTT0F1dGhvcml6YXRpb25TZXNzaW9uOjpjb21wbGV0ZUludGVybmFsKGNvbnN0
IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBOU0RhdGEgKmRhdGEpCmRpZmYg
LS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzQ5N2ZlMmJm
Mjg4Y2YyNTRlZmRkZGE3NTMyNWUzMmZkZjI1ZGM5Mi4uNDNmZmIxZDQ2MTRjMWYwYTZmMTc3NDk4
MDk1YzRkNTRjMjYyZmM2MyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE5LTA3LTI1ICBKaWV3ZW4gVGFuICA8amll
d2VuX3RhbkBhcHBsZS5jb20+CisKKyAgICAgICAgTmF2aWdhdGlvblNPQXV0aG9yaXphdGlvblNl
c3Npb24gc2hvdWxkIGNoZWNrIHRoZSBhY3RpdmUgVVJMIG9mIHRoZSByZXNwb25kaW5nIHBhZ2Ug
YWZ0ZXIgd2FraW5nIHVwIGZyb20gd2FpdGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAwMTUwCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS81MzI4
MDE3MD4KKworICAgICAgICBSZXZpZXdlZCBieSBCcmVudCBGdWxnaGFtLgorCisgICAgICAgICog
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9UZXN0U09BdXRob3JpemF0aW9uLm1tOgor
ICAgICAgICAoVGVzdFdlYktpdEFQSTo6VEVTVCk6CisKIDIwMTktMDctMjQgIEppZXdlbiBUYW4g
IDxqaWV3ZW5fdGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWJQYWdlUHJveHk6OnJlY2VpdmVk
UG9saWN5RGVjaXNpb24gc2hvdWxkIGNoZWNrIG5hdmlnYXRpb24gSUQgYmVmb3JlIGNsZWFyIHBl
bmRpbmdBUElSZXF1ZXN0CmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdENvY29hL1Rlc3RTT0F1dGhvcml6YXRpb24ubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL1Rlc3RTT0F1dGhvcml6YXRpb24ubW0KaW5kZXggYWQyOTJkYWU0ODRm
ZmNmNGRlMzE5ZmUyZGM5NjA5NGIzN2MxYThmNi4uZjRhYjNlZWNiNzAwZWQwNTJiNzI4ZTFkMDE1
ZjIyNDVhYzMzOTViMSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9UZXN0U09BdXRob3JpemF0aW9uLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkv
VGVzdHMvV2ViS2l0Q29jb2EvVGVzdFNPQXV0aG9yaXphdGlvbi5tbQpAQCAtNzYxLDcgKzc2MSw3
IEBAIFRFU1QoU09BdXRob3JpemF0aW9uUmVkaXJlY3QsIEludGVyY2VwdGlvblN1Y2NlZWRXaXRo
V2FpdGluZ1Nlc3Npb24pCiAgICAgYXV0byBkZWxlZ2F0ZSA9IGFkb3B0TlMoW1tUZXN0U09BdXRo
b3JpemF0aW9uRGVsZWdhdGUgYWxsb2NdIGluaXRdKTsKICAgICBjb25maWd1cmVTT0F1dGhvcml6
YXRpb25XZWJWaWV3KHdlYlZpZXcuZ2V0KCksIGRlbGVnYXRlLmdldCgpLCBPcGVuRXh0ZXJuYWxT
Y2hlbWVzUG9saWN5OjpBbGxvdyk7CiAKLSAgICAvLyBUaGUgc2Vzc2lvbiB3aWxsIGJlIHdhaXRp
bmcgc2luY2UgdGhlIHdlYiB2aWV3IGlzIGlzIG5vdCBpbnQgdGhlIHdpbmRvdy4KKyAgICAvLyBU
aGUgc2Vzc2lvbiB3aWxsIGJlIHdhaXRpbmcgc2luY2UgdGhlIHdlYiB2aWV3IGlzIGlzIG5vdCBp
biB0aGUgd2luZG93LgogICAgIFt3ZWJWaWV3IHJlbW92ZUZyb21TdXBlcnZpZXddOwogICAgIFt3
ZWJWaWV3IGxvYWRSZXF1ZXN0OltOU1VSTFJlcXVlc3QgcmVxdWVzdFdpdGhVUkw6dGVzdFVSTC5n
ZXQoKV1dOwogICAgIFV0aWw6OnNsZWVwKDAuNSk7CkBAIC03ODMsNiArNzgzLDM1IEBAIFRFU1Qo
U09BdXRob3JpemF0aW9uUmVkaXJlY3QsIEludGVyY2VwdGlvblN1Y2NlZWRXaXRoV2FpdGluZ1Nl
c3Npb24pCiAgICAgRVhQRUNUX1dLX1NUUkVRKHJlZGlyZWN0VVJMLmdldCgpLmFic29sdXRlU3Ry
aW5nLCBmaW5hbFVSTCk7CiB9CiAKK1RFU1QoU09BdXRob3JpemF0aW9uUmVkaXJlY3QsIEludGVy
Y2VwdGlvbkFib3J0ZWRXaXRoV2FpdGluZ1Nlc3Npb24pCit7CisgICAgcmVzZXRTdGF0ZSgpOwor
ICAgIENsYXNzTWV0aG9kU3dpenpsZXIgc3dpenpsZXIxKFBBTDo6Z2V0U09BdXRob3JpemF0aW9u
Q2xhc3MoKSwgQHNlbGVjdG9yKGNhblBlcmZvcm1BdXRob3JpemF0aW9uV2l0aFVSTDpyZXNwb25z
ZUNvZGU6KSwgcmVpbnRlcnByZXRfY2FzdDxJTVA+KG92ZXJyaWRlQ2FuUGVyZm9ybUF1dGhvcml6
YXRpb25XaXRoVVJMKSk7CisgICAgSW5zdGFuY2VNZXRob2RTd2l6emxlciBzd2l6emxlcjIoUEFM
OjpnZXRTT0F1dGhvcml6YXRpb25DbGFzcygpLCBAc2VsZWN0b3Ioc2V0RGVsZWdhdGU6KSwgcmVp
bnRlcnByZXRfY2FzdDxJTVA+KG92ZXJyaWRlU2V0RGVsZWdhdGUpKTsKKyAgICBJbnN0YW5jZU1l
dGhvZFN3aXp6bGVyIHN3aXp6bGVyMyhQQUw6OmdldFNPQXV0aG9yaXphdGlvbkNsYXNzKCksIEBz
ZWxlY3RvcihiZWdpbkF1dGhvcml6YXRpb25XaXRoVVJMOmh0dHBIZWFkZXJzOmh0dHBCb2R5Oiks
IHJlaW50ZXJwcmV0X2Nhc3Q8SU1QPihvdmVycmlkZUJlZ2luQXV0aG9yaXphdGlvbldpdGhVUkwp
KTsKKworICAgIFJldGFpblB0cjxOU1VSTD4gdGVzdFVSTDEgPSBbW05TQnVuZGxlIG1haW5CdW5k
bGVdIFVSTEZvclJlc291cmNlOkAic2ltcGxlIiB3aXRoRXh0ZW5zaW9uOkAiaHRtbCIgc3ViZGly
ZWN0b3J5OkAiVGVzdFdlYktpdEFQSS5yZXNvdXJjZXMiXTsKKyAgICBSZXRhaW5QdHI8TlNVUkw+
IHRlc3RVUkwyID0gW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBVUkxGb3JSZXNvdXJjZTpAInNpbXBs
ZTIiIHdpdGhFeHRlbnNpb246QCJodG1sIiBzdWJkaXJlY3Rvcnk6QCJUZXN0V2ViS2l0QVBJLnJl
c291cmNlcyJdOworCisgICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcg
YWxsb2NdIGluaXRXaXRoRnJhbWU6Q0dSZWN0TWFrZSgwLCAwLCAzMjAsIDUwMCldKTsKKyAgICBh
dXRvIGRlbGVnYXRlID0gYWRvcHROUyhbW1Rlc3RTT0F1dGhvcml6YXRpb25EZWxlZ2F0ZSBhbGxv
Y10gaW5pdF0pOworICAgIGNvbmZpZ3VyZVNPQXV0aG9yaXphdGlvbldlYlZpZXcod2ViVmlldy5n
ZXQoKSwgZGVsZWdhdGUuZ2V0KCksIE9wZW5FeHRlcm5hbFNjaGVtZXNQb2xpY3k6OkFsbG93KTsK
KworICAgIC8vIFRoZSBzZXNzaW9uIHdpbGwgYmUgd2FpdGluZyBzaW5jZSB0aGUgd2ViIHZpZXcg
aXMgaXMgbm90IGluIHRoZSB3aW5kb3cuCisgICAgW3dlYlZpZXcgcmVtb3ZlRnJvbVN1cGVydmll
d107CisgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVS
TDp0ZXN0VVJMMS5nZXQoKV1dOworICAgIFV0aWw6OnNsZWVwKDAuNSk7CisgICAgRVhQRUNUX0ZB
TFNFKGF1dGhvcml6YXRpb25QZXJmb3JtZWQpOworCisgICAgW3dlYlZpZXcgbG9hZFJlcXVlc3Q6
W05TVVJMUmVxdWVzdCByZXF1ZXN0V2l0aFVSTDp0ZXN0VVJMMi5nZXQoKV1dOworICAgIC8vIFNo
b3VsZCBhY3RpdmF0ZSB0aGUgc2Vzc2lvbi4KKyAgICBbd2ViVmlldyBhZGRUb1Rlc3RXaW5kb3dd
OworCisgICAgLy8gVGhlIHdhaXRpbmcgc2Vzc2lvbiBzaG91bGQgYmUgYWJvcnRlZCBhcyB0aGUg
cHJldmlvdXMgbmF2aWdhdGlvbiBpcyBvdmVyd3JpdHRlbiBieSBhIG5ldyBuYXZpZ2F0aW9uLgor
ICAgIFV0aWw6OnJ1bigmbmF2aWdhdGlvbkNvbXBsZXRlZCk7CisgICAgRVhQRUNUX0ZBTFNFKGF1
dGhvcml6YXRpb25QZXJmb3JtZWQpOworfQorCiBURVNUKFNPQXV0aG9yaXphdGlvblJlZGlyZWN0
LCBJbnRlcmNlcHRpb25TdWNjZWVkV2l0aEFjdGl2ZVNlc3Npb25EaWRNb3ZlV2luZG93KQogewog
ICAgIHJlc2V0U3RhdGUoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>