<?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>210925</bug_id>
          
          <creation_ts>2020-04-23 10:57:29 -0700</creation_ts>
          <short_desc>Make CachedResourceLoader more conforming to Fetch specification</short_desc>
          <delta_ts>2020-04-23 23:52:20 -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>New Bugs</component>
          <version>Safari Technology Preview</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="Rob Buis">rbuis</reporter>
          <assigned_to name="Rob Buis">rbuis</assigned_to>
          <cc>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1644862</commentid>
    <comment_count>0</comment_count>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-23 10:57:29 -0700</bug_when>
    <thetext>Make CachedResourceLoader more conforming to Fetch specification by fixing links, re-ordering steps to
match main fetch [1] and do early exit code paths earlier.

[1] https://fetch.spec.whatwg.org/#main-fetch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644864</commentid>
    <comment_count>1</comment_count>
      <attachid>397361</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-23 10:59:59 -0700</bug_when>
    <thetext>Created attachment 397361
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644882</commentid>
    <comment_count>2</comment_count>
      <attachid>397368</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-23 11:44:12 -0700</bug_when>
    <thetext>Created attachment 397368
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1644936</commentid>
    <comment_count>3</comment_count>
      <attachid>397378</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2020-04-23 13:07:01 -0700</bug_when>
    <thetext>Created attachment 397378
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645100</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-23 23:51:24 -0700</bug_when>
    <thetext>Committed r260622: &lt;https://trac.webkit.org/changeset/260622&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 397378.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1645101</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-23 23:52:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/62286558&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397361</attachid>
            <date>2020-04-23 10:59:59 -0700</date>
            <delta_ts>2020-04-23 11:44:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210925-20200423195957.patch</filename>
            <type>text/plain</type>
            <size>9073</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwNTc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTFiM2U4OWQwNTk3OWE2
OTc2NjQ5ODViNGM3MjI3NTc3NWJhMTc0OS4uOWNkY2NjMmY0YmQyNTA5MjVlYmZkMDgwYzZkYjg5
MjZiMTUxYTUxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIwLTA0LTIzICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgTWFrZSBDYWNoZWRSZXNvdXJjZUxv
YWRlciBtb3JlIGNvbmZvcm1pbmcgdG8gRmV0Y2ggc3BlY2lmaWNhdGlvbgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwOTI1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBDYWNoZWRSZXNvdXJjZUxv
YWRlciBtb3JlIGNvbmZvcm1pbmcgdG8gRmV0Y2ggc3BlY2lmaWNhdGlvbgorICAgICAgICBieSBm
aXhpbmcgbGlua3MsIHJlLW9yZGVyaW5nIHN0ZXBzIHRvIG1hdGNoIG1haW4gZmV0Y2ggWzFdIGFu
ZCBkbworICAgICAgICBlYXJseSBleGl0IGNvZGUgcGF0aHMgZWFybGllci4KKworICAgICAgICAq
IGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdEltYWdlKTogYWRqdXN0IHRvIHBhcmFtZXRl
ciBjaGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVx
dWVzdCk6IHJlcGxhY2UgUmVzb3VyY2VSZXF1ZXN0IHBhcmFtIHdpdGggRmV0Y2hPcHRpb25zCisg
ICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cHJlcGFyZUZldGNoKTogZml4
IGNvbW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVz
dFJlc291cmNlKTogcmUtb3JkZXIuCisgICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlTG9hZGVyLmg6CisKKzIwMjAtMDQtMjMgIFJvYiBCdWlzICA8cmJ1aXNAaWdhbGlhLmNvbT4K
KworICAgICAgICBNb3ZlIFVSTCBzY2hlbWUgY2hlY2sgdG8gTmV0d29ya0xvYWRDaGVja2VyCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE5MjQKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXSVAuCisKKyAg
ICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVM
b2FkZXI6OmxvYWRGcmFtZVJlcXVlc3QpOgorCiAyMDIwLTA0LTIzICBBbmRyZXMgR29uemFsZXog
IDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KIAogICAgICAgICBDb3JyZWN0aW9uIGZvciBwYXRjaCAz
OTcwMDEuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291
cmNlTG9hZGVyLmNwcAppbmRleCBmNWJkNTRkOWY5MmZiNDM3NGYyNjkwYTI0ODU0MjA0NWI3NmNm
ZDY4Li5iZjM5ODJhYjA4MjM3ZGQxYWJhZmU5MDg1MDBiNzU3N2VhNDZhNGExIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHAK
QEAgLTIwNSw3ICsyMDUsNyBAQCBSZXNvdXJjZUVycm9yT3I8Q2FjaGVkUmVzb3VyY2VIYW5kbGU8
Q2FjaGVkSW1hZ2U+PiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdAogICAgICAgICAgICAg
aWYgKERvY3VtZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpKQogICAgICAgICAgICAg
ICAgIHJlcXVlc3QudXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKCpkb2N1bWVudCk7CiAg
ICAgICAgICAgICBVUkwgcmVxdWVzdFVSTCA9IHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkudXJs
KCk7Ci0gICAgICAgICAgICBpZiAocmVxdWVzdFVSTC5pc1ZhbGlkKCkgJiYgY2FuUmVxdWVzdChD
YWNoZWRSZXNvdXJjZTo6VHlwZTo6SW1hZ2VSZXNvdXJjZSwgcmVxdWVzdFVSTCwgcmVxdWVzdCwg
Rm9yUHJlbG9hZDo6Tm8pKQorICAgICAgICAgICAgaWYgKHJlcXVlc3RVUkwuaXNWYWxpZCgpICYm
IGNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGU6OkltYWdlUmVzb3VyY2UsIHJlcXVlc3RV
UkwsIHJlcXVlc3Qub3B0aW9ucygpLCBGb3JQcmVsb2FkOjpObykpCiAgICAgICAgICAgICAgICAg
UGluZ0xvYWRlcjo6bG9hZEltYWdlKCpmcmFtZSwgcmVxdWVzdFVSTCk7CiAgICAgICAgICAgICBy
ZXR1cm4gQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkSW1hZ2U+IHsgfTsKICAgICAgICAgfQpA
QCAtNDk3LDExICs0OTcsOSBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNTYW1lT3JpZ2luRGF0YVVS
TChjb25zdCBVUkwmIHVybCwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpbwogICAgIHJldHVybiB1
cmwucHJvdG9jb2xJc0RhdGEoKSAmJiBvcHRpb25zLnNhbWVPcmlnaW5EYXRhVVJMRmxhZyA9PSBT
YW1lT3JpZ2luRGF0YVVSTEZsYWc6OlNldDsKIH0KIAotLy8gU2VjdXJpdHkgY2hlY2tzIGRlZmlu
ZWQgaW4gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI21haW4tZmV0Y2ggc3RlcCAyIGFu
ZCA1LgotYm9vbCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNvdXJj
ZTo6VHlwZSB0eXBlLCBjb25zdCBVUkwmIHVybCwgY29uc3QgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0
JiByZXF1ZXN0LCBGb3JQcmVsb2FkIGZvclByZWxvYWQpCisvLyBTZWN1cml0eSBjaGVja3MgZGVm
aW5lZCBpbiBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jbWFpbi1mZXRjaCBzdGVwIDIg
YW5kIDQuCitib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjYW5SZXF1ZXN0KENhY2hlZFJlc291
cmNlOjpUeXBlIHR5cGUsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBGZXRjaE9wdGlvbnMmIG9wdGlv
bnMsIEZvclByZWxvYWQgZm9yUHJlbG9hZCkKIHsKLSAgICBhdXRvJiBvcHRpb25zID0gcmVxdWVz
dC5vcHRpb25zKCk7Ci0KICAgICBpZiAoZG9jdW1lbnQoKSAmJiAhZG9jdW1lbnQoKS0+c2VjdXJp
dHlPcmlnaW4oKS5jYW5EaXNwbGF5KHVybCkpIHsKICAgICAgICAgaWYgKGZvclByZWxvYWQgPT0g
Rm9yUHJlbG9hZDo6Tm8pCiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6cmVwb3J0TG9jYWxMb2Fk
RmFpbGVkKGZyYW1lKCksIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKSk7CkBA
IC03MTUsMTAgKzcxMyw4IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBsb2dNZW1vcnlDYWNoZVJlc291
cmNlUmVxdWVzdChGcmFtZSogZnJhbWUsIGNvbnN0IFN0cmluZyYga2V5CiAKIHZvaWQgQ2FjaGVk
UmVzb3VyY2VMb2FkZXI6OnByZXBhcmVGZXRjaChDYWNoZWRSZXNvdXJjZTo6VHlwZSB0eXBlLCBD
YWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgLy8gSW1wbGVtZW50aW5nIHN0
ZXAgMSB0byA3IG9mIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNmZXRjaGluZwotICAg
IGF1dG8qIGRvY3VtZW50ID0gdGhpcy0+ZG9jdW1lbnQoKTsKLQotICAgIGlmIChkb2N1bWVudCkg
eworICAgIC8vIEltcGxlbWVudGluZyBzdGVwIDEuMSB0byAxLjYgb2YgaHR0cHM6Ly9mZXRjaC5z
cGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtZmV0Y2guCisgICAgaWYgKGF1dG8qIGRvY3VtZW50ID0g
dGhpcy0+ZG9jdW1lbnQoKSkgewogICAgICAgICBpZiAoIXJlcXVlc3Qub3JpZ2luKCkpCiAgICAg
ICAgICAgICByZXF1ZXN0LnNldE9yaWdpbihkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSk7CiAj
aWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpAQCAtODA4LDEyICs4MDQsMTkgQEAgc3RhdGljIGlu
bGluZSBTVkdJbWFnZSogY2FjaGVkUmVzb3VyY2VTVkdJbWFnZShDYWNoZWRSZXNvdXJjZSogcmVz
b3VyY2UpCiAKIFJlc291cmNlRXJyb3JPcjxDYWNoZWRSZXNvdXJjZUhhbmRsZTxDYWNoZWRSZXNv
dXJjZT4+IENhY2hlZFJlc291cmNlTG9hZGVyOjpyZXF1ZXN0UmVzb3VyY2UoQ2FjaGVkUmVzb3Vy
Y2U6OlR5cGUgdHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVzdCwgRm9yUHJlbG9h
ZCBmb3JQcmVsb2FkLCBJbWFnZUxvYWRpbmcgaW1hZ2VMb2FkaW5nKQogeworICAgIFVSTCB1cmwg
PSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogICAgIGlmICghZnJhbWUoKSB8fCAh
ZnJhbWUoKS0+cGFnZSgpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRUQoInJlcXVl
c3RSZXNvdXJjZTogZmFpbGVkIGJlY2F1c2Ugbm8gZnJhbWUgb3IgcGFnZSIpOwotICAgICAgICBy
ZXR1cm4gbWFrZVVuZXhwZWN0ZWQoUmVzb3VyY2VFcnJvciB7IGVycm9yRG9tYWluV2ViS2l0SW50
ZXJuYWwsIDAsIHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkudXJsKCksICJJbnZhbGlkIGxvYWRl
ciBzdGF0ZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKFJlc291cmNlRXJy
b3IgeyBlcnJvckRvbWFpbldlYktpdEludGVybmFsLCAwLCB1cmwsICJJbnZhbGlkIGxvYWRlciBz
dGF0ZSJfcyB9KTsKICAgICB9CisKICAgICBhdXRvJiBmcmFtZSA9ICp0aGlzLT5mcmFtZSgpOwot
ICAgIGF1dG8mIHBhZ2UgPSAqZnJhbWUucGFnZSgpOworICAgIGlmICghdXJsLmlzVmFsaWQoKSkg
eworICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEX1dJVEhfRlJBTUUoInJlcXVlc3RSZXNv
dXJjZTogVVJMIGlzIGludmFsaWQiLCBmcmFtZSk7CisgICAgICAgIHJldHVybiBtYWtlVW5leHBl
Y3RlZChSZXNvdXJjZUVycm9yIHsgZXJyb3JEb21haW5XZWJLaXRJbnRlcm5hbCwgMCwgdXJsLCAi
VVJMIGlzIGludmFsaWQiX3MgfSk7CisgICAgfQorCisgICAgTE9HKFJlc291cmNlTG9hZGluZywg
IkNhY2hlZFJlc291cmNlTG9hZGVyOjpyZXF1ZXN0UmVzb3VyY2UgJyUuMjU1cycsIGNoYXJzZXQg
JyVzJywgcHJpb3JpdHk9JWQsIGZvclByZWxvYWQ9JXUiLCB1cmwuc3RyaW5nQ2VudGVyRWxsaXBz
aXplZFRvTGVuZ3RoKCkubGF0aW4xKCkuZGF0YSgpLCByZXF1ZXN0LmNoYXJzZXQoKS5sYXRpbjEo
KS5kYXRhKCksIHJlcXVlc3QucHJpb3JpdHkoKSA/IHN0YXRpY19jYXN0PGludD4ocmVxdWVzdC5w
cmlvcml0eSgpLnZhbHVlKCkpIDogLTEsIGZvclByZWxvYWQgPT0gRm9yUHJlbG9hZDo6WWVzKTsK
IAogICAgIHJlcXVlc3Quc2V0RGVzdGluYXRpb25JZk5vdFNldChkZXN0aW5hdGlvbkZvclR5cGUo
dHlwZSkpOwogCkBAIC04MjUsMzYgKzgyOCwzMiBAQCBSZXNvdXJjZUVycm9yT3I8Q2FjaGVkUmVz
b3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+PiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdQog
ICAgICAgICBvcmlnaW5hbFJlcXVlc3QtPmNsZWFySFRUUE9yaWdpbigpOwogICAgIH0KIAotICAg
IGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSB0aGlzLT5kb2N1bWVudCgpKQotICAgICAgICByZXF1
ZXN0LnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCgqZG9jdW1lbnQpOwotCi0gICAgaWYg
KEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbEludGVyY2VwdFJlcXVlc3QoJmZyYW1lLCBy
ZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpKSkKLSAgICAgICAgcmVxdWVzdC5zZXRDYWNoaW5nUG9s
aWN5KENhY2hpbmdQb2xpY3k6OkRpc2FsbG93Q2FjaGluZyk7CisgICAgcHJlcGFyZUZldGNoKHR5
cGUsIHJlcXVlc3QpOwogCi0gICAgVVJMIHVybCA9IHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCku
dXJsKCk7CiAgICAgaWYgKHJlcXVlc3Qub3B0aW9ucygpLmRlc3RpbmF0aW9uID09IEZldGNoT3B0
aW9uczo6RGVzdGluYXRpb246OkRvY3VtZW50KSB7CiAgICAgICAgIC8vIEZJWE1FOiBJZGVudGlm
eSBIU1RTIGNhc2VzIGFuZCBhdm9pZCBhZGRpbmcgdGhlIGhlYWRlci4gPGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTc4ODU+Ci0gICAgICAgIGlmICghdXJsLnByb3Rv
Y29sSXMoImh0dHBzIikpCisgICAgICAgIGlmICghcmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKS51
cmwoKS5wcm90b2NvbElzKCJodHRwcyIpKQogICAgICAgICAgICAgcmVxdWVzdC5yZXNvdXJjZVJl
cXVlc3QoKS5zZXRIVFRQSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlVwZ3JhZGVJbnNlY3Vy
ZVJlcXVlc3RzLCAiMSJfcyk7CiAgICAgfQogCi0gICAgcmVxdWVzdC51cGRhdGVSZWZlcnJlclBv
bGljeShkb2N1bWVudCgpID8gZG9jdW1lbnQoKS0+cmVmZXJyZXJQb2xpY3koKSA6IFJlZmVycmVy
UG9saWN5OjpOb1JlZmVycmVyV2hlbkRvd25ncmFkZSk7Ci0KLSAgICBMT0coUmVzb3VyY2VMb2Fk
aW5nLCAiQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RSZXNvdXJjZSAnJS4yNTVzJywgY2hh
cnNldCAnJXMnLCBwcmlvcml0eT0lZCwgZm9yUHJlbG9hZD0ldSIsIHVybC5zdHJpbmdDZW50ZXJF
bGxpcHNpemVkVG9MZW5ndGgoKS5sYXRpbjEoKS5kYXRhKCksIHJlcXVlc3QuY2hhcnNldCgpLmxh
dGluMSgpLmRhdGEoKSwgcmVxdWVzdC5wcmlvcml0eSgpID8gc3RhdGljX2Nhc3Q8aW50PihyZXF1
ZXN0LnByaW9yaXR5KCkudmFsdWUoKSkgOiAtMSwgZm9yUHJlbG9hZCA9PSBGb3JQcmVsb2FkOjpZ
ZXMpOwotCi0gICAgaWYgKCF1cmwuaXNWYWxpZCgpKSB7Ci0gICAgICAgIFJFTEVBU0VfTE9HX0lG
X0FMTE9XRURfV0lUSF9GUkFNRSgicmVxdWVzdFJlc291cmNlOiBVUkwgaXMgaW52YWxpZCIsIGZy
YW1lKTsKLSAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKFJlc291cmNlRXJyb3IgeyBlcnJv
ckRvbWFpbldlYktpdEludGVybmFsLCAwLCB1cmwsICJVUkwgaXMgaW52YWxpZCJfcyB9KTsKKyAg
ICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gdGhpcy0+ZG9jdW1lbnQoKSkgeworICAgICAgICBy
ZXF1ZXN0LnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCgqZG9jdW1lbnQpOworICAgICAg
ICB1cmwgPSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogICAgIH0KIAotICAgIHBy
ZXBhcmVGZXRjaCh0eXBlLCByZXF1ZXN0KTsKLQogICAgIC8vIFdlIGFyZSBwYXNzaW5nIHVybCBh
cyB3ZWxsIGFzIHJlcXVlc3QsIGFzIHJlcXVlc3QgdXJsIG1heSBjb250YWluIGEgZnJhZ21lbnQg
aWRlbnRpZmllci4KLSAgICBpZiAoIWNhblJlcXVlc3QodHlwZSwgdXJsLCByZXF1ZXN0LCBmb3JQ
cmVsb2FkKSkgeworICAgIGlmICghY2FuUmVxdWVzdCh0eXBlLCB1cmwsIHJlcXVlc3Qub3B0aW9u
cygpLCBmb3JQcmVsb2FkKSkgewogICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEX1dJVEhf
RlJBTUUoInJlcXVlc3RSZXNvdXJjZTogTm90IGFsbG93ZWQgdG8gcmVxdWVzdCByZXNvdXJjZSIs
IGZyYW1lKTsKICAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKFJlc291cmNlRXJyb3IgeyBl
cnJvckRvbWFpbldlYktpdEludGVybmFsLCAwLCB1cmwsICJOb3QgYWxsb3dlZCB0byByZXF1ZXN0
IHJlc291cmNlIl9zLCBSZXNvdXJjZUVycm9yOjpUeXBlOjpBY2Nlc3NDb250cm9sIH0pOwogICAg
IH0KIAorICAgIHJlcXVlc3QudXBkYXRlUmVmZXJyZXJQb2xpY3koZG9jdW1lbnQoKSA/IGRvY3Vt
ZW50KCktPnJlZmVycmVyUG9saWN5KCkgOiBSZWZlcnJlclBvbGljeTo6Tm9SZWZlcnJlcldoZW5E
b3duZ3JhZGUpOworCisgICAgaWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbEludGVy
Y2VwdFJlcXVlc3QoJmZyYW1lLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpKSkKKyAgICAgICAg
cmVxdWVzdC5zZXRDYWNoaW5nUG9saWN5KENhY2hpbmdQb2xpY3k6OkRpc2FsbG93Q2FjaGluZyk7
CisKKyAgICBhdXRvJiBwYWdlID0gKmZyYW1lLnBhZ2UoKTsKKwogI2lmIEVOQUJMRShDT05URU5U
X0VYVEVOU0lPTlMpCiAgICAgaWYgKG1fZG9jdW1lbnRMb2FkZXIpIHsKICAgICAgICAgY29uc3Qg
YXV0byYgcmVzb3VyY2VSZXF1ZXN0ID0gcmVxdWVzdC5yZXNvdXJjZVJlcXVlc3QoKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKaW5k
ZXggYjMzZTNkZGMzMTVhNWE4MDAyNzJlNmE2NDZhY2M3NDQ1OTBjNmQ5NS4uOWIyN2YzMGE2MDEy
MGZmYThjNzdiYWIzMWVkZWY1Y2E0YzE0N2Q3NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKQEAgLTE3Nyw3ICsxNzcsNyBAQCBw
cml2YXRlOgogICAgIHZvaWQgcHJlcGFyZUZldGNoKENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNo
ZWRSZXNvdXJjZVJlcXVlc3QmKTsKICAgICB2b2lkIHVwZGF0ZUhUVFBSZXF1ZXN0SGVhZGVycyhD
YWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7CiAKLSAgICBib29s
IGNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIGNvbnN0IFVSTCYsIGNvbnN0IENhY2hl
ZFJlc291cmNlUmVxdWVzdCYsIEZvclByZWxvYWQpOworICAgIGJvb2wgY2FuUmVxdWVzdChDYWNo
ZWRSZXNvdXJjZTo6VHlwZSwgY29uc3QgVVJMJiwgY29uc3QgRmV0Y2hPcHRpb25zJiwgRm9yUHJl
bG9hZCk7CiAKICAgICBlbnVtIFJldmFsaWRhdGlvblBvbGljeSB7IFVzZSwgUmV2YWxpZGF0ZSwg
UmVsb2FkLCBMb2FkIH07CiAgICAgUmV2YWxpZGF0aW9uUG9saWN5IGRldGVybWluZVJldmFsaWRh
dGlvblBvbGljeShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jiwg
Q2FjaGVkUmVzb3VyY2UqIGV4aXN0aW5nUmVzb3VyY2UsIEZvclByZWxvYWQsIEltYWdlTG9hZGlu
ZykgY29uc3Q7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397368</attachid>
            <date>2020-04-23 11:44:12 -0700</date>
            <delta_ts>2020-04-23 13:06:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210925-20200423204410.patch</filename>
            <type>text/plain</type>
            <size>8809</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwNTc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTFiM2U4OWQwNTk3OWE2
OTc2NjQ5ODViNGM3MjI3NTc3NWJhMTc0OS4uYzkzNGQyZmE5OGE5Y2EyM2JjY2ExZWQ4NDFlYjZh
ZTM4NDA5YzhhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA0LTIzICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgTWFrZSBDYWNoZWRSZXNvdXJjZUxv
YWRlciBtb3JlIGNvbmZvcm1pbmcgdG8gRmV0Y2ggc3BlY2lmaWNhdGlvbgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwOTI1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBDYWNoZWRSZXNvdXJjZUxv
YWRlciBtb3JlIGNvbmZvcm1pbmcgdG8gRmV0Y2ggc3BlY2lmaWNhdGlvbgorICAgICAgICBieSBm
aXhpbmcgbGlua3MsIHJlLW9yZGVyaW5nIHN0ZXBzIHRvIG1hdGNoIG1haW4gZmV0Y2ggWzFdIGFu
ZCBkbworICAgICAgICBlYXJseSBleGl0IGNvZGUgcGF0aHMgZWFybGllci4KKworICAgICAgICAq
IGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdEltYWdlKTogYWRqdXN0IHRvIHBhcmFtZXRl
ciBjaGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVx
dWVzdCk6IHJlcGxhY2UgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHBhcmFtIHdpdGggUmVzb3VyY2VM
b2FkZXJPcHRpb25zLgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OnBy
ZXBhcmVGZXRjaCk6IGZpeCBjb21tZW50LgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OnJlcXVlc3RSZXNvdXJjZSk6IHJlLW9yZGVyLgorICAgICAgICAqIGxvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oOgorCiAyMDIwLTA0LTIzICBBbmRyZXMgR29uemFs
ZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KIAogICAgICAgICBDb3JyZWN0aW9uIGZvciBwYXRj
aCAzOTcwMDEuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlTG9hZGVyLmNwcAppbmRleCBmNWJkNTRkOWY5MmZiNDM3NGYyNjkwYTI0ODU0MjA0NWI3
NmNmZDY4Li5iZDBiODcyNWRhNjdiYjE3YTZhYmYwMWFmZGI3OWI1YTc4MTQ0NDZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5j
cHAKQEAgLTIwNSw3ICsyMDUsNyBAQCBSZXNvdXJjZUVycm9yT3I8Q2FjaGVkUmVzb3VyY2VIYW5k
bGU8Q2FjaGVkSW1hZ2U+PiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdAogICAgICAgICAg
ICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpKQogICAgICAgICAg
ICAgICAgIHJlcXVlc3QudXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKCpkb2N1bWVudCk7
CiAgICAgICAgICAgICBVUkwgcmVxdWVzdFVSTCA9IHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCku
dXJsKCk7Ci0gICAgICAgICAgICBpZiAocmVxdWVzdFVSTC5pc1ZhbGlkKCkgJiYgY2FuUmVxdWVz
dChDYWNoZWRSZXNvdXJjZTo6VHlwZTo6SW1hZ2VSZXNvdXJjZSwgcmVxdWVzdFVSTCwgcmVxdWVz
dCwgRm9yUHJlbG9hZDo6Tm8pKQorICAgICAgICAgICAgaWYgKHJlcXVlc3RVUkwuaXNWYWxpZCgp
ICYmIGNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGU6OkltYWdlUmVzb3VyY2UsIHJlcXVl
c3RVUkwsIHJlcXVlc3Qub3B0aW9ucygpLCBGb3JQcmVsb2FkOjpObykpCiAgICAgICAgICAgICAg
ICAgUGluZ0xvYWRlcjo6bG9hZEltYWdlKCpmcmFtZSwgcmVxdWVzdFVSTCk7CiAgICAgICAgICAg
ICByZXR1cm4gQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkSW1hZ2U+IHsgfTsKICAgICAgICAg
fQpAQCAtNDk3LDExICs0OTcsOSBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNTYW1lT3JpZ2luRGF0
YVVSTChjb25zdCBVUkwmIHVybCwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpbwogICAgIHJldHVy
biB1cmwucHJvdG9jb2xJc0RhdGEoKSAmJiBvcHRpb25zLnNhbWVPcmlnaW5EYXRhVVJMRmxhZyA9
PSBTYW1lT3JpZ2luRGF0YVVSTEZsYWc6OlNldDsKIH0KIAotLy8gU2VjdXJpdHkgY2hlY2tzIGRl
ZmluZWQgaW4gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI21haW4tZmV0Y2ggc3RlcCAy
IGFuZCA1LgotYm9vbCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNv
dXJjZTo6VHlwZSB0eXBlLCBjb25zdCBVUkwmIHVybCwgY29uc3QgQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBGb3JQcmVsb2FkIGZvclByZWxvYWQpCisvLyBTZWN1cml0eSBjaGVja3Mg
ZGVmaW5lZCBpbiBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jbWFpbi1mZXRjaCBzdGVw
IDIgYW5kIDQuCitib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjYW5SZXF1ZXN0KENhY2hlZFJl
c291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBSZXNvdXJjZUxvYWRlck9w
dGlvbnMmIG9wdGlvbnMsIEZvclByZWxvYWQgZm9yUHJlbG9hZCkKIHsKLSAgICBhdXRvJiBvcHRp
b25zID0gcmVxdWVzdC5vcHRpb25zKCk7Ci0KICAgICBpZiAoZG9jdW1lbnQoKSAmJiAhZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKS5jYW5EaXNwbGF5KHVybCkpIHsKICAgICAgICAgaWYgKGZv
clByZWxvYWQgPT0gRm9yUHJlbG9hZDo6Tm8pCiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6cmVw
b3J0TG9jYWxMb2FkRmFpbGVkKGZyYW1lKCksIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9M
ZW5ndGgoKSk7CkBAIC03MTUsMTAgKzcxMyw4IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBsb2dNZW1v
cnlDYWNoZVJlc291cmNlUmVxdWVzdChGcmFtZSogZnJhbWUsIGNvbnN0IFN0cmluZyYga2V5CiAK
IHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnByZXBhcmVGZXRjaChDYWNoZWRSZXNvdXJjZTo6
VHlwZSB0eXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgLy8gSW1w
bGVtZW50aW5nIHN0ZXAgMSB0byA3IG9mIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNm
ZXRjaGluZwotICAgIGF1dG8qIGRvY3VtZW50ID0gdGhpcy0+ZG9jdW1lbnQoKTsKLQotICAgIGlm
IChkb2N1bWVudCkgeworICAgIC8vIEltcGxlbWVudGluZyBzdGVwIDEuMSB0byAxLjYgb2YgaHR0
cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtZmV0Y2guCisgICAgaWYgKGF1dG8q
IGRvY3VtZW50ID0gdGhpcy0+ZG9jdW1lbnQoKSkgewogICAgICAgICBpZiAoIXJlcXVlc3Qub3Jp
Z2luKCkpCiAgICAgICAgICAgICByZXF1ZXN0LnNldE9yaWdpbihkb2N1bWVudC0+c2VjdXJpdHlP
cmlnaW4oKSk7CiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpAQCAtODA4LDEyICs4MDQsMTkg
QEAgc3RhdGljIGlubGluZSBTVkdJbWFnZSogY2FjaGVkUmVzb3VyY2VTVkdJbWFnZShDYWNoZWRS
ZXNvdXJjZSogcmVzb3VyY2UpCiAKIFJlc291cmNlRXJyb3JPcjxDYWNoZWRSZXNvdXJjZUhhbmRs
ZTxDYWNoZWRSZXNvdXJjZT4+IENhY2hlZFJlc291cmNlTG9hZGVyOjpyZXF1ZXN0UmVzb3VyY2Uo
Q2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVz
dCwgRm9yUHJlbG9hZCBmb3JQcmVsb2FkLCBJbWFnZUxvYWRpbmcgaW1hZ2VMb2FkaW5nKQogewor
ICAgIFVSTCB1cmwgPSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogICAgIGlmICgh
ZnJhbWUoKSB8fCAhZnJhbWUoKS0+cGFnZSgpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FM
TE9XRUQoInJlcXVlc3RSZXNvdXJjZTogZmFpbGVkIGJlY2F1c2Ugbm8gZnJhbWUgb3IgcGFnZSIp
OwotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoUmVzb3VyY2VFcnJvciB7IGVycm9yRG9t
YWluV2ViS2l0SW50ZXJuYWwsIDAsIHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkudXJsKCksICJJ
bnZhbGlkIGxvYWRlciBzdGF0ZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVk
KFJlc291cmNlRXJyb3IgeyBlcnJvckRvbWFpbldlYktpdEludGVybmFsLCAwLCB1cmwsICJJbnZh
bGlkIGxvYWRlciBzdGF0ZSJfcyB9KTsKICAgICB9CisKICAgICBhdXRvJiBmcmFtZSA9ICp0aGlz
LT5mcmFtZSgpOwotICAgIGF1dG8mIHBhZ2UgPSAqZnJhbWUucGFnZSgpOworICAgIGlmICghdXJs
LmlzVmFsaWQoKSkgeworICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEX1dJVEhfRlJBTUUo
InJlcXVlc3RSZXNvdXJjZTogVVJMIGlzIGludmFsaWQiLCBmcmFtZSk7CisgICAgICAgIHJldHVy
biBtYWtlVW5leHBlY3RlZChSZXNvdXJjZUVycm9yIHsgZXJyb3JEb21haW5XZWJLaXRJbnRlcm5h
bCwgMCwgdXJsLCAiVVJMIGlzIGludmFsaWQiX3MgfSk7CisgICAgfQorCisgICAgTE9HKFJlc291
cmNlTG9hZGluZywgIkNhY2hlZFJlc291cmNlTG9hZGVyOjpyZXF1ZXN0UmVzb3VyY2UgJyUuMjU1
cycsIGNoYXJzZXQgJyVzJywgcHJpb3JpdHk9JWQsIGZvclByZWxvYWQ9JXUiLCB1cmwuc3RyaW5n
Q2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkubGF0aW4xKCkuZGF0YSgpLCByZXF1ZXN0LmNoYXJz
ZXQoKS5sYXRpbjEoKS5kYXRhKCksIHJlcXVlc3QucHJpb3JpdHkoKSA/IHN0YXRpY19jYXN0PGlu
dD4ocmVxdWVzdC5wcmlvcml0eSgpLnZhbHVlKCkpIDogLTEsIGZvclByZWxvYWQgPT0gRm9yUHJl
bG9hZDo6WWVzKTsKIAogICAgIHJlcXVlc3Quc2V0RGVzdGluYXRpb25JZk5vdFNldChkZXN0aW5h
dGlvbkZvclR5cGUodHlwZSkpOwogCkBAIC04MjUsMzYgKzgyOCwzMiBAQCBSZXNvdXJjZUVycm9y
T3I8Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+PiBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6cmVxdQogICAgICAgICBvcmlnaW5hbFJlcXVlc3QtPmNsZWFySFRUUE9yaWdpbigpOwog
ICAgIH0KIAotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSB0aGlzLT5kb2N1bWVudCgpKQot
ICAgICAgICByZXF1ZXN0LnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCgqZG9jdW1lbnQp
OwotCi0gICAgaWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbEludGVyY2VwdFJlcXVl
c3QoJmZyYW1lLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpKSkKLSAgICAgICAgcmVxdWVzdC5z
ZXRDYWNoaW5nUG9saWN5KENhY2hpbmdQb2xpY3k6OkRpc2FsbG93Q2FjaGluZyk7CisgICAgcHJl
cGFyZUZldGNoKHR5cGUsIHJlcXVlc3QpOwogCi0gICAgVVJMIHVybCA9IHJlcXVlc3QucmVzb3Vy
Y2VSZXF1ZXN0KCkudXJsKCk7CiAgICAgaWYgKHJlcXVlc3Qub3B0aW9ucygpLmRlc3RpbmF0aW9u
ID09IEZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OkRvY3VtZW50KSB7CiAgICAgICAgIC8vIEZJ
WE1FOiBJZGVudGlmeSBIU1RTIGNhc2VzIGFuZCBhdm9pZCBhZGRpbmcgdGhlIGhlYWRlci4gPGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTc4ODU+Ci0gICAgICAgIGlm
ICghdXJsLnByb3RvY29sSXMoImh0dHBzIikpCisgICAgICAgIGlmICghcmVxdWVzdC5yZXNvdXJj
ZVJlcXVlc3QoKS51cmwoKS5wcm90b2NvbElzKCJodHRwcyIpKQogICAgICAgICAgICAgcmVxdWVz
dC5yZXNvdXJjZVJlcXVlc3QoKS5zZXRIVFRQSGVhZGVyRmllbGQoSFRUUEhlYWRlck5hbWU6OlVw
Z3JhZGVJbnNlY3VyZVJlcXVlc3RzLCAiMSJfcyk7CiAgICAgfQogCi0gICAgcmVxdWVzdC51cGRh
dGVSZWZlcnJlclBvbGljeShkb2N1bWVudCgpID8gZG9jdW1lbnQoKS0+cmVmZXJyZXJQb2xpY3ko
KSA6IFJlZmVycmVyUG9saWN5OjpOb1JlZmVycmVyV2hlbkRvd25ncmFkZSk7Ci0KLSAgICBMT0co
UmVzb3VyY2VMb2FkaW5nLCAiQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnJlcXVlc3RSZXNvdXJjZSAn
JS4yNTVzJywgY2hhcnNldCAnJXMnLCBwcmlvcml0eT0lZCwgZm9yUHJlbG9hZD0ldSIsIHVybC5z
dHJpbmdDZW50ZXJFbGxpcHNpemVkVG9MZW5ndGgoKS5sYXRpbjEoKS5kYXRhKCksIHJlcXVlc3Qu
Y2hhcnNldCgpLmxhdGluMSgpLmRhdGEoKSwgcmVxdWVzdC5wcmlvcml0eSgpID8gc3RhdGljX2Nh
c3Q8aW50PihyZXF1ZXN0LnByaW9yaXR5KCkudmFsdWUoKSkgOiAtMSwgZm9yUHJlbG9hZCA9PSBG
b3JQcmVsb2FkOjpZZXMpOwotCi0gICAgaWYgKCF1cmwuaXNWYWxpZCgpKSB7Ci0gICAgICAgIFJF
TEVBU0VfTE9HX0lGX0FMTE9XRURfV0lUSF9GUkFNRSgicmVxdWVzdFJlc291cmNlOiBVUkwgaXMg
aW52YWxpZCIsIGZyYW1lKTsKLSAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKFJlc291cmNl
RXJyb3IgeyBlcnJvckRvbWFpbldlYktpdEludGVybmFsLCAwLCB1cmwsICJVUkwgaXMgaW52YWxp
ZCJfcyB9KTsKKyAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gdGhpcy0+ZG9jdW1lbnQoKSkg
eworICAgICAgICByZXF1ZXN0LnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCgqZG9jdW1l
bnQpOworICAgICAgICB1cmwgPSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogICAg
IH0KIAotICAgIHByZXBhcmVGZXRjaCh0eXBlLCByZXF1ZXN0KTsKLQogICAgIC8vIFdlIGFyZSBw
YXNzaW5nIHVybCBhcyB3ZWxsIGFzIHJlcXVlc3QsIGFzIHJlcXVlc3QgdXJsIG1heSBjb250YWlu
IGEgZnJhZ21lbnQgaWRlbnRpZmllci4KLSAgICBpZiAoIWNhblJlcXVlc3QodHlwZSwgdXJsLCBy
ZXF1ZXN0LCBmb3JQcmVsb2FkKSkgeworICAgIGlmICghY2FuUmVxdWVzdCh0eXBlLCB1cmwsIHJl
cXVlc3Qub3B0aW9ucygpLCBmb3JQcmVsb2FkKSkgewogICAgICAgICBSRUxFQVNFX0xPR19JRl9B
TExPV0VEX1dJVEhfRlJBTUUoInJlcXVlc3RSZXNvdXJjZTogTm90IGFsbG93ZWQgdG8gcmVxdWVz
dCByZXNvdXJjZSIsIGZyYW1lKTsKICAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVkKFJlc291
cmNlRXJyb3IgeyBlcnJvckRvbWFpbldlYktpdEludGVybmFsLCAwLCB1cmwsICJOb3QgYWxsb3dl
ZCB0byByZXF1ZXN0IHJlc291cmNlIl9zLCBSZXNvdXJjZUVycm9yOjpUeXBlOjpBY2Nlc3NDb250
cm9sIH0pOwogICAgIH0KIAorICAgIHJlcXVlc3QudXBkYXRlUmVmZXJyZXJQb2xpY3koZG9jdW1l
bnQoKSA/IGRvY3VtZW50KCktPnJlZmVycmVyUG9saWN5KCkgOiBSZWZlcnJlclBvbGljeTo6Tm9S
ZWZlcnJlcldoZW5Eb3duZ3JhZGUpOworCisgICAgaWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6d2lsbEludGVyY2VwdFJlcXVlc3QoJmZyYW1lLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgp
KSkKKyAgICAgICAgcmVxdWVzdC5zZXRDYWNoaW5nUG9saWN5KENhY2hpbmdQb2xpY3k6OkRpc2Fs
bG93Q2FjaGluZyk7CisKKyAgICBhdXRvJiBwYWdlID0gKmZyYW1lLnBhZ2UoKTsKKwogI2lmIEVO
QUJMRShDT05URU5UX0VYVEVOU0lPTlMpCiAgICAgaWYgKG1fZG9jdW1lbnRMb2FkZXIpIHsKICAg
ICAgICAgY29uc3QgYXV0byYgcmVzb3VyY2VSZXF1ZXN0ID0gcmVxdWVzdC5yZXNvdXJjZVJlcXVl
c3QoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNv
dXJjZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNl
TG9hZGVyLmgKaW5kZXggYjMzZTNkZGMzMTVhNWE4MDAyNzJlNmE2NDZhY2M3NDQ1OTBjNmQ5NS4u
NzczZDhiZjQ5NTM3ODEzNjc1MTgxOWU0NWJhOTVjNWI4MzBkM2E3ZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVyLmgKQEAgLTE3Nyw3
ICsxNzcsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgcHJlcGFyZUZldGNoKENhY2hlZFJlc291cmNl
OjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKICAgICB2b2lkIHVwZGF0ZUhUVFBSZXF1
ZXN0SGVhZGVycyhDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0Jik7
CiAKLSAgICBib29sIGNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIGNvbnN0IFVSTCYs
IGNvbnN0IENhY2hlZFJlc291cmNlUmVxdWVzdCYsIEZvclByZWxvYWQpOworICAgIGJvb2wgY2Fu
UmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6VHlwZSwgY29uc3QgVVJMJiwgY29uc3QgUmVzb3VyY2VM
b2FkZXJPcHRpb25zJiwgRm9yUHJlbG9hZCk7CiAKICAgICBlbnVtIFJldmFsaWRhdGlvblBvbGlj
eSB7IFVzZSwgUmV2YWxpZGF0ZSwgUmVsb2FkLCBMb2FkIH07CiAgICAgUmV2YWxpZGF0aW9uUG9s
aWN5IGRldGVybWluZVJldmFsaWRhdGlvblBvbGljeShDYWNoZWRSZXNvdXJjZTo6VHlwZSwgQ2Fj
aGVkUmVzb3VyY2VSZXF1ZXN0JiwgQ2FjaGVkUmVzb3VyY2UqIGV4aXN0aW5nUmVzb3VyY2UsIEZv
clByZWxvYWQsIEltYWdlTG9hZGluZykgY29uc3Q7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397378</attachid>
            <date>2020-04-23 13:07:01 -0700</date>
            <delta_ts>2020-04-23 23:51:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210925-20200423220659.patch</filename>
            <type>text/plain</type>
            <size>8742</size>
            <attacher name="Rob Buis">rbuis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwNTc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTFiM2U4OWQwNTk3OWE2
OTc2NjQ5ODViNGM3MjI3NTc3NWJhMTc0OS4uYzkzNGQyZmE5OGE5Y2EyM2JjY2ExZWQ4NDFlYjZh
ZTM4NDA5YzhhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA0LTIzICBSb2Ig
QnVpcyAgPHJidWlzQGlnYWxpYS5jb20+CisKKyAgICAgICAgTWFrZSBDYWNoZWRSZXNvdXJjZUxv
YWRlciBtb3JlIGNvbmZvcm1pbmcgdG8gRmV0Y2ggc3BlY2lmaWNhdGlvbgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwOTI1CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBDYWNoZWRSZXNvdXJjZUxv
YWRlciBtb3JlIGNvbmZvcm1pbmcgdG8gRmV0Y2ggc3BlY2lmaWNhdGlvbgorICAgICAgICBieSBm
aXhpbmcgbGlua3MsIHJlLW9yZGVyaW5nIHN0ZXBzIHRvIG1hdGNoIG1haW4gZmV0Y2ggWzFdIGFu
ZCBkbworICAgICAgICBlYXJseSBleGl0IGNvZGUgcGF0aHMgZWFybGllci4KKworICAgICAgICAq
IGxvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdEltYWdlKTogYWRqdXN0IHRvIHBhcmFtZXRl
ciBjaGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVx
dWVzdCk6IHJlcGxhY2UgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHBhcmFtIHdpdGggUmVzb3VyY2VM
b2FkZXJPcHRpb25zLgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3VyY2VMb2FkZXI6OnBy
ZXBhcmVGZXRjaCk6IGZpeCBjb21tZW50LgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkUmVzb3Vy
Y2VMb2FkZXI6OnJlcXVlc3RSZXNvdXJjZSk6IHJlLW9yZGVyLgorICAgICAgICAqIGxvYWRlci9j
YWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5oOgorCiAyMDIwLTA0LTIzICBBbmRyZXMgR29uemFs
ZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KIAogICAgICAgICBDb3JyZWN0aW9uIGZvciBwYXRj
aCAzOTcwMDEuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2VMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlTG9hZGVyLmNwcAppbmRleCBmNWJkNTRkOWY5MmZiNDM3NGYyNjkwYTI0ODU0MjA0NWI3
NmNmZDY4Li5jYTk5MTAwYWM2OTk3ODg5YzU4MTllNTFhYTNkYTMwZjk1NTIyOGZhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZUxvYWRlci5j
cHAKQEAgLTIwNSw3ICsyMDUsNyBAQCBSZXNvdXJjZUVycm9yT3I8Q2FjaGVkUmVzb3VyY2VIYW5k
bGU8Q2FjaGVkSW1hZ2U+PiBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdAogICAgICAgICAg
ICAgaWYgKERvY3VtZW50KiBkb2N1bWVudCA9IGZyYW1lLT5kb2N1bWVudCgpKQogICAgICAgICAg
ICAgICAgIHJlcXVlc3QudXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKCpkb2N1bWVudCk7
CiAgICAgICAgICAgICBVUkwgcmVxdWVzdFVSTCA9IHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCku
dXJsKCk7Ci0gICAgICAgICAgICBpZiAocmVxdWVzdFVSTC5pc1ZhbGlkKCkgJiYgY2FuUmVxdWVz
dChDYWNoZWRSZXNvdXJjZTo6VHlwZTo6SW1hZ2VSZXNvdXJjZSwgcmVxdWVzdFVSTCwgcmVxdWVz
dCwgRm9yUHJlbG9hZDo6Tm8pKQorICAgICAgICAgICAgaWYgKHJlcXVlc3RVUkwuaXNWYWxpZCgp
ICYmIGNhblJlcXVlc3QoQ2FjaGVkUmVzb3VyY2U6OlR5cGU6OkltYWdlUmVzb3VyY2UsIHJlcXVl
c3RVUkwsIHJlcXVlc3Qub3B0aW9ucygpLCBGb3JQcmVsb2FkOjpObykpCiAgICAgICAgICAgICAg
ICAgUGluZ0xvYWRlcjo6bG9hZEltYWdlKCpmcmFtZSwgcmVxdWVzdFVSTCk7CiAgICAgICAgICAg
ICByZXR1cm4gQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkSW1hZ2U+IHsgfTsKICAgICAgICAg
fQpAQCAtNDk3LDExICs0OTcsOSBAQCBzdGF0aWMgaW5saW5lIGJvb2wgaXNTYW1lT3JpZ2luRGF0
YVVSTChjb25zdCBVUkwmIHVybCwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpbwogICAgIHJldHVy
biB1cmwucHJvdG9jb2xJc0RhdGEoKSAmJiBvcHRpb25zLnNhbWVPcmlnaW5EYXRhVVJMRmxhZyA9
PSBTYW1lT3JpZ2luRGF0YVVSTEZsYWc6OlNldDsKIH0KIAotLy8gU2VjdXJpdHkgY2hlY2tzIGRl
ZmluZWQgaW4gaHR0cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI21haW4tZmV0Y2ggc3RlcCAy
IGFuZCA1LgotYm9vbCBDYWNoZWRSZXNvdXJjZUxvYWRlcjo6Y2FuUmVxdWVzdChDYWNoZWRSZXNv
dXJjZTo6VHlwZSB0eXBlLCBjb25zdCBVUkwmIHVybCwgY29uc3QgQ2FjaGVkUmVzb3VyY2VSZXF1
ZXN0JiByZXF1ZXN0LCBGb3JQcmVsb2FkIGZvclByZWxvYWQpCisvLyBTZWN1cml0eSBjaGVja3Mg
ZGVmaW5lZCBpbiBodHRwczovL2ZldGNoLnNwZWMud2hhdHdnLm9yZy8jbWFpbi1mZXRjaCBzdGVw
IDIgYW5kIDQuCitib29sIENhY2hlZFJlc291cmNlTG9hZGVyOjpjYW5SZXF1ZXN0KENhY2hlZFJl
c291cmNlOjpUeXBlIHR5cGUsIGNvbnN0IFVSTCYgdXJsLCBjb25zdCBSZXNvdXJjZUxvYWRlck9w
dGlvbnMmIG9wdGlvbnMsIEZvclByZWxvYWQgZm9yUHJlbG9hZCkKIHsKLSAgICBhdXRvJiBvcHRp
b25zID0gcmVxdWVzdC5vcHRpb25zKCk7Ci0KICAgICBpZiAoZG9jdW1lbnQoKSAmJiAhZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKS5jYW5EaXNwbGF5KHVybCkpIHsKICAgICAgICAgaWYgKGZv
clByZWxvYWQgPT0gRm9yUHJlbG9hZDo6Tm8pCiAgICAgICAgICAgICBGcmFtZUxvYWRlcjo6cmVw
b3J0TG9jYWxMb2FkRmFpbGVkKGZyYW1lKCksIHVybC5zdHJpbmdDZW50ZXJFbGxpcHNpemVkVG9M
ZW5ndGgoKSk7CkBAIC03MTUsMTAgKzcxMyw4IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBsb2dNZW1v
cnlDYWNoZVJlc291cmNlUmVxdWVzdChGcmFtZSogZnJhbWUsIGNvbnN0IFN0cmluZyYga2V5CiAK
IHZvaWQgQ2FjaGVkUmVzb3VyY2VMb2FkZXI6OnByZXBhcmVGZXRjaChDYWNoZWRSZXNvdXJjZTo6
VHlwZSB0eXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QpCiB7Ci0gICAgLy8gSW1w
bGVtZW50aW5nIHN0ZXAgMSB0byA3IG9mIGh0dHBzOi8vZmV0Y2guc3BlYy53aGF0d2cub3JnLyNm
ZXRjaGluZwotICAgIGF1dG8qIGRvY3VtZW50ID0gdGhpcy0+ZG9jdW1lbnQoKTsKLQotICAgIGlm
IChkb2N1bWVudCkgeworICAgIC8vIEltcGxlbWVudGluZyBzdGVwIDEuMSB0byAxLjYgb2YgaHR0
cHM6Ly9mZXRjaC5zcGVjLndoYXR3Zy5vcmcvI2NvbmNlcHQtZmV0Y2guCisgICAgaWYgKGF1dG8q
IGRvY3VtZW50ID0gdGhpcy0+ZG9jdW1lbnQoKSkgewogICAgICAgICBpZiAoIXJlcXVlc3Qub3Jp
Z2luKCkpCiAgICAgICAgICAgICByZXF1ZXN0LnNldE9yaWdpbihkb2N1bWVudC0+c2VjdXJpdHlP
cmlnaW4oKSk7CiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpAQCAtODA4LDEyICs4MDQsMTkg
QEAgc3RhdGljIGlubGluZSBTVkdJbWFnZSogY2FjaGVkUmVzb3VyY2VTVkdJbWFnZShDYWNoZWRS
ZXNvdXJjZSogcmVzb3VyY2UpCiAKIFJlc291cmNlRXJyb3JPcjxDYWNoZWRSZXNvdXJjZUhhbmRs
ZTxDYWNoZWRSZXNvdXJjZT4+IENhY2hlZFJlc291cmNlTG9hZGVyOjpyZXF1ZXN0UmVzb3VyY2Uo
Q2FjaGVkUmVzb3VyY2U6OlR5cGUgdHlwZSwgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0JiYgcmVxdWVz
dCwgRm9yUHJlbG9hZCBmb3JQcmVsb2FkLCBJbWFnZUxvYWRpbmcgaW1hZ2VMb2FkaW5nKQogewor
ICAgIFVSTCB1cmwgPSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpLnVybCgpOwogICAgIGlmICgh
ZnJhbWUoKSB8fCAhZnJhbWUoKS0+cGFnZSgpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FM
TE9XRUQoInJlcXVlc3RSZXNvdXJjZTogZmFpbGVkIGJlY2F1c2Ugbm8gZnJhbWUgb3IgcGFnZSIp
OwotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoUmVzb3VyY2VFcnJvciB7IGVycm9yRG9t
YWluV2ViS2l0SW50ZXJuYWwsIDAsIHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkudXJsKCksICJJ
bnZhbGlkIGxvYWRlciBzdGF0ZSJfcyB9KTsKKyAgICAgICAgcmV0dXJuIG1ha2VVbmV4cGVjdGVk
KFJlc291cmNlRXJyb3IgeyBlcnJvckRvbWFpbldlYktpdEludGVybmFsLCAwLCB1cmwsICJJbnZh
bGlkIGxvYWRlciBzdGF0ZSJfcyB9KTsKICAgICB9CisKICAgICBhdXRvJiBmcmFtZSA9ICp0aGlz
LT5mcmFtZSgpOwotICAgIGF1dG8mIHBhZ2UgPSAqZnJhbWUucGFnZSgpOworICAgIGlmICghdXJs
LmlzVmFsaWQoKSkgeworICAgICAgICBSRUxFQVNFX0xPR19JRl9BTExPV0VEX1dJVEhfRlJBTUUo
InJlcXVlc3RSZXNvdXJjZTogVVJMIGlzIGludmFsaWQiLCBmcmFtZSk7CisgICAgICAgIHJldHVy
biBtYWtlVW5leHBlY3RlZChSZXNvdXJjZUVycm9yIHsgZXJyb3JEb21haW5XZWJLaXRJbnRlcm5h
bCwgMCwgdXJsLCAiVVJMIGlzIGludmFsaWQiX3MgfSk7CisgICAgfQorCisgICAgTE9HKFJlc291
cmNlTG9hZGluZywgIkNhY2hlZFJlc291cmNlTG9hZGVyOjpyZXF1ZXN0UmVzb3VyY2UgJyUuMjU1
cycsIGNoYXJzZXQgJyVzJywgcHJpb3JpdHk9JWQsIGZvclByZWxvYWQ9JXUiLCB1cmwuc3RyaW5n
Q2VudGVyRWxsaXBzaXplZFRvTGVuZ3RoKCkubGF0aW4xKCkuZGF0YSgpLCByZXF1ZXN0LmNoYXJz
ZXQoKS5sYXRpbjEoKS5kYXRhKCksIHJlcXVlc3QucHJpb3JpdHkoKSA/IHN0YXRpY19jYXN0PGlu
dD4ocmVxdWVzdC5wcmlvcml0eSgpLnZhbHVlKCkpIDogLTEsIGZvclByZWxvYWQgPT0gRm9yUHJl
bG9hZDo6WWVzKTsKIAogICAgIHJlcXVlc3Quc2V0RGVzdGluYXRpb25JZk5vdFNldChkZXN0aW5h
dGlvbkZvclR5cGUodHlwZSkpOwogCkBAIC04MjUsMzYgKzgyOCwzMiBAQCBSZXNvdXJjZUVycm9y
T3I8Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmVzb3VyY2U+PiBDYWNoZWRSZXNvdXJjZUxv
YWRlcjo6cmVxdQogICAgICAgICBvcmlnaW5hbFJlcXVlc3QtPmNsZWFySFRUUE9yaWdpbigpOwog
ICAgIH0KIAotICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSB0aGlzLT5kb2N1bWVudCgpKQot
ICAgICAgICByZXF1ZXN0LnVwZ3JhZGVJbnNlY3VyZVJlcXVlc3RJZk5lZWRlZCgqZG9jdW1lbnQp
OwotCi0gICAgaWYgKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbEludGVyY2VwdFJlcXVl
c3QoJmZyYW1lLCByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpKSkKLSAgICAgICAgcmVxdWVzdC5z
ZXRDYWNoaW5nUG9saWN5KENhY2hpbmdQb2xpY3k6OkRpc2FsbG93Q2FjaGluZyk7CisgICAgcHJl
cGFyZUZldGNoKHR5cGUsIHJlcXVlc3QpOwogCi0gICAgVVJMIHVybCA9IHJlcXVlc3QucmVzb3Vy
Y2VSZXF1ZXN0KCkudXJsKCk7CiAgICAgaWYgKHJlcXVlc3Qub3B0aW9ucygpLmRlc3RpbmF0aW9u
ID09IEZldGNoT3B0aW9uczo6RGVzdGluYXRpb246OkRvY3VtZW50KSB7CiAgICAgICAgIC8vIEZJ
WE1FOiBJZGVudGlmeSBIU1RTIGNhc2VzIGFuZCBhdm9pZCBhZGRpbmcgdGhlIGhlYWRlci4gPGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTc4ODU+CiAgICAgICAgIGlm
ICghdXJsLnByb3RvY29sSXMoImh0dHBzIikpCiAgICAgICAgICAgICByZXF1ZXN0LnJlc291cmNl
UmVxdWVzdCgpLnNldEhUVFBIZWFkZXJGaWVsZChIVFRQSGVhZGVyTmFtZTo6VXBncmFkZUluc2Vj
dXJlUmVxdWVzdHMsICIxIl9zKTsKICAgICB9CiAKLSAgICByZXF1ZXN0LnVwZGF0ZVJlZmVycmVy
UG9saWN5KGRvY3VtZW50KCkgPyBkb2N1bWVudCgpLT5yZWZlcnJlclBvbGljeSgpIDogUmVmZXJy
ZXJQb2xpY3k6Ok5vUmVmZXJyZXJXaGVuRG93bmdyYWRlKTsKLQotICAgIExPRyhSZXNvdXJjZUxv
YWRpbmcsICJDYWNoZWRSZXNvdXJjZUxvYWRlcjo6cmVxdWVzdFJlc291cmNlICclLjI1NXMnLCBj
aGFyc2V0ICclcycsIHByaW9yaXR5PSVkLCBmb3JQcmVsb2FkPSV1IiwgdXJsLnN0cmluZ0NlbnRl
ckVsbGlwc2l6ZWRUb0xlbmd0aCgpLmxhdGluMSgpLmRhdGEoKSwgcmVxdWVzdC5jaGFyc2V0KCku
bGF0aW4xKCkuZGF0YSgpLCByZXF1ZXN0LnByaW9yaXR5KCkgPyBzdGF0aWNfY2FzdDxpbnQ+KHJl
cXVlc3QucHJpb3JpdHkoKS52YWx1ZSgpKSA6IC0xLCBmb3JQcmVsb2FkID09IEZvclByZWxvYWQ6
Olllcyk7Ci0KLSAgICBpZiAoIXVybC5pc1ZhbGlkKCkpIHsKLSAgICAgICAgUkVMRUFTRV9MT0df
SUZfQUxMT1dFRF9XSVRIX0ZSQU1FKCJyZXF1ZXN0UmVzb3VyY2U6IFVSTCBpcyBpbnZhbGlkIiwg
ZnJhbWUpOwotICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoUmVzb3VyY2VFcnJvciB7IGVy
cm9yRG9tYWluV2ViS2l0SW50ZXJuYWwsIDAsIHVybCwgIlVSTCBpcyBpbnZhbGlkIl9zIH0pOwor
ICAgIGlmIChEb2N1bWVudCogZG9jdW1lbnQgPSB0aGlzLT5kb2N1bWVudCgpKSB7CisgICAgICAg
IHJlcXVlc3QudXBncmFkZUluc2VjdXJlUmVxdWVzdElmTmVlZGVkKCpkb2N1bWVudCk7CisgICAg
ICAgIHVybCA9IHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkudXJsKCk7CiAgICAgfQogCi0gICAg
cHJlcGFyZUZldGNoKHR5cGUsIHJlcXVlc3QpOwotCiAgICAgLy8gV2UgYXJlIHBhc3NpbmcgdXJs
IGFzIHdlbGwgYXMgcmVxdWVzdCwgYXMgcmVxdWVzdCB1cmwgbWF5IGNvbnRhaW4gYSBmcmFnbWVu
dCBpZGVudGlmaWVyLgotICAgIGlmICghY2FuUmVxdWVzdCh0eXBlLCB1cmwsIHJlcXVlc3QsIGZv
clByZWxvYWQpKSB7CisgICAgaWYgKCFjYW5SZXF1ZXN0KHR5cGUsIHVybCwgcmVxdWVzdC5vcHRp
b25zKCksIGZvclByZWxvYWQpKSB7CiAgICAgICAgIFJFTEVBU0VfTE9HX0lGX0FMTE9XRURfV0lU
SF9GUkFNRSgicmVxdWVzdFJlc291cmNlOiBOb3QgYWxsb3dlZCB0byByZXF1ZXN0IHJlc291cmNl
IiwgZnJhbWUpOwogICAgICAgICByZXR1cm4gbWFrZVVuZXhwZWN0ZWQoUmVzb3VyY2VFcnJvciB7
IGVycm9yRG9tYWluV2ViS2l0SW50ZXJuYWwsIDAsIHVybCwgIk5vdCBhbGxvd2VkIHRvIHJlcXVl
c3QgcmVzb3VyY2UiX3MsIFJlc291cmNlRXJyb3I6OlR5cGU6OkFjY2Vzc0NvbnRyb2wgfSk7CiAg
ICAgfQogCisgICAgcmVxdWVzdC51cGRhdGVSZWZlcnJlclBvbGljeShkb2N1bWVudCgpID8gZG9j
dW1lbnQoKS0+cmVmZXJyZXJQb2xpY3koKSA6IFJlZmVycmVyUG9saWN5OjpOb1JlZmVycmVyV2hl
bkRvd25ncmFkZSk7CisKKyAgICBpZiAoSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uOjp3aWxsSW50
ZXJjZXB0UmVxdWVzdCgmZnJhbWUsIHJlcXVlc3QucmVzb3VyY2VSZXF1ZXN0KCkpKQorICAgICAg
ICByZXF1ZXN0LnNldENhY2hpbmdQb2xpY3koQ2FjaGluZ1BvbGljeTo6RGlzYWxsb3dDYWNoaW5n
KTsKKworICAgIGF1dG8mIHBhZ2UgPSAqZnJhbWUucGFnZSgpOworCiAjaWYgRU5BQkxFKENPTlRF
TlRfRVhURU5TSU9OUykKICAgICBpZiAobV9kb2N1bWVudExvYWRlcikgewogICAgICAgICBjb25z
dCBhdXRvJiByZXNvdXJjZVJlcXVlc3QgPSByZXF1ZXN0LnJlc291cmNlUmVxdWVzdCgpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlTG9hZGVy
LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaApp
bmRleCBiMzNlM2RkYzMxNWE1YTgwMDI3MmU2YTY0NmFjYzc0NDU5MGM2ZDk1Li43NzNkOGJmNDk1
Mzc4MTM2NzUxODE5ZTQ1YmE5NWM1YjgzMGQzYTdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2VMb2FkZXIuaApAQCAtMTc3LDcgKzE3Nyw3IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBwcmVwYXJlRmV0Y2goQ2FjaGVkUmVzb3VyY2U6OlR5cGUsIENh
Y2hlZFJlc291cmNlUmVxdWVzdCYpOwogICAgIHZvaWQgdXBkYXRlSFRUUFJlcXVlc3RIZWFkZXJz
KENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNoZWRSZXNvdXJjZVJlcXVlc3QmKTsKIAotICAgIGJv
b2wgY2FuUmVxdWVzdChDYWNoZWRSZXNvdXJjZTo6VHlwZSwgY29uc3QgVVJMJiwgY29uc3QgQ2Fj
aGVkUmVzb3VyY2VSZXF1ZXN0JiwgRm9yUHJlbG9hZCk7CisgICAgYm9vbCBjYW5SZXF1ZXN0KENh
Y2hlZFJlc291cmNlOjpUeXBlLCBjb25zdCBVUkwmLCBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlv
bnMmLCBGb3JQcmVsb2FkKTsKIAogICAgIGVudW0gUmV2YWxpZGF0aW9uUG9saWN5IHsgVXNlLCBS
ZXZhbGlkYXRlLCBSZWxvYWQsIExvYWQgfTsKICAgICBSZXZhbGlkYXRpb25Qb2xpY3kgZGV0ZXJt
aW5lUmV2YWxpZGF0aW9uUG9saWN5KENhY2hlZFJlc291cmNlOjpUeXBlLCBDYWNoZWRSZXNvdXJj
ZVJlcXVlc3QmLCBDYWNoZWRSZXNvdXJjZSogZXhpc3RpbmdSZXNvdXJjZSwgRm9yUHJlbG9hZCwg
SW1hZ2VMb2FkaW5nKSBjb25zdDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>