<?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>225636</bug_id>
          
          <creation_ts>2021-05-10 22:26:57 -0700</creation_ts>
          <short_desc>Allow logging minimal info about sending media files through XMLHttpRequest</short_desc>
          <delta_ts>2021-05-18 11:48:59 -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>Images</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=223706</see_also>
          <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="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>achristensen</cc>
    
    <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mifenton</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1758814</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-05-10 22:26:57 -0700</bug_when>
    <thetext>Some files may be uploaded from JavaScript through XMLHttpRequest. We need to handle this case as we did for HTMLFormElement::submit in r275103.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758840</commentid>
    <comment_count>1</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-05-11 00:23:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/76639138&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758841</commentid>
    <comment_count>2</comment_count>
      <attachid>428252</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-05-11 00:24:09 -0700</bug_when>
    <thetext>Created attachment 428252
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1758843</commentid>
    <comment_count>3</comment_count>
      <attachid>428254</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-05-11 00:34:31 -0700</bug_when>
    <thetext>Created attachment 428254
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759009</commentid>
    <comment_count>4</comment_count>
      <attachid>428302</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-05-11 11:29:17 -0700</bug_when>
    <thetext>Created attachment 428302
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1759313</commentid>
    <comment_count>5</comment_count>
      <attachid>428302</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2021-05-12 11:24:34 -0700</bug_when>
    <thetext>Comment on attachment 428302
Patch

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

&gt; Source/WebCore/html/HTMLFormElement.cpp:408
&gt; +    document().page()-&gt;logSubmittedImageOrMediaFiles(imageOrMediaFilesCount);

Let&apos;s null check page:
if (auto* page = document().page())
    page-&gt;...

&gt; Source/WebCore/page/Page.cpp:1056
&gt; +void Page::logSubmittedImageOrMediaFiles(unsigned imageOrMediaFilesCount)

Why don&apos;t we just make one function and pass a FormData&amp; as a parameter instead of one function to count then another function to log?

&gt; Source/WebCore/xml/XMLHttpRequest.cpp:549
&gt; +        if (auto page = scriptExecutionContext()-&gt;isDocument() ? document()-&gt;page() : nullptr)

auto*

It&apos;s also not great to introduce code in XHR that only works in document context.  This fixes another case of unreported FormData uploading, but workers are the next case and fetch is probably the one after that.  This might be nicer in a more central location, like if we added a request parameter to addParametersShared and checked its HTTP body there, instead of one in HTMLFormElement and one in xhr.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760340</commentid>
    <comment_count>6</comment_count>
      <attachid>428703</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-05-14 20:21:07 -0700</bug_when>
    <thetext>Created attachment 428703
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760459</commentid>
    <comment_count>7</comment_count>
      <attachid>428302</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2021-05-15 13:44:37 -0700</bug_when>
    <thetext>Comment on attachment 428302
Patch

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

&gt;&gt; Source/WebCore/xml/XMLHttpRequest.cpp:549
&gt;&gt; +        if (auto page = scriptExecutionContext()-&gt;isDocument() ? document()-&gt;page() : nullptr)
&gt; 
&gt; auto*
&gt; 
&gt; It&apos;s also not great to introduce code in XHR that only works in document context.  This fixes another case of unreported FormData uploading, but workers are the next case and fetch is probably the one after that.  This might be nicer in a more central location, like if we added a request parameter to addParametersShared and checked its HTTP body there, instead of one in HTMLFormElement and one in xhr.

This is a great idea. I was looking for a common place for all file uploading but I could not find one because I was looking for it in WebCore. I added the logging in addParametersShared().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761224</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-18 11:48:56 -0700</bug_when>
    <thetext>Committed r277666 (237868@main): &lt;https://commits.webkit.org/237868@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 428703.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428252</attachid>
            <date>2021-05-11 00:24:09 -0700</date>
            <delta_ts>2021-05-11 00:37:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225636-20210511002409.patch</filename>
            <type>text/plain</type>
            <size>7767</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWNlZjkyN2U0NTMzMDY2
Yjg5ZTlhZTIzNDY4ZWE4OTE4MTZiYjI3Yi4uMWFkNjJhNzZmZDg4NjJkOWQ4Mzc0MDFiNjY4MGFm
ZDkwN2IwMzZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIxLTA1LTEwICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIEFsbG93IGxvZ2dpbmcg
bWluaW1hbCBpbmZvIGFib3V0IHNlbmRpbmcgbWVkaWEgZmlsZXMgdGhyb3VnaCBYTUxIdHRwUmVx
dWVzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1
NjM2CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjYzOTEzOD4KKworICAgICAgICBVc3VhbGx5
IHRoZSBmaWxlcyBhcmUgdXBsb2FkZWQgdGhyb3VnaCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdC4g
QnV0IGluCisgICAgICAgIHNvbWUgY2FzZXMsIHRoZSBKYXZhU2NyaXB0IHNlbmRzIHRoZSBjb250
ZW50IG9mIHRoZSBmaWxlIHRvIHRoZSBzZXJ2ZXIKKyAgICAgICAgdGhyb3VnaCBYTUxIdHRwUmVx
dWVzdC4gV2UgbmVlZCB0byBhbGxvdyBsb2dnaW5nIHRoZSB1cGxvYWQgaW5mbyBpbiB0aGlzCisg
ICAgICAgIGNhc2UgYXMgd2VsbC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGh0bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KToKKyAgICAgICAgTW92ZSBkZXRlY3RpbmcgdGhl
IGltYWdlcyBhbmQgbWVkaWEgZmlsZXMgdG8gRm9ybURhdGEuIEFuZCBtb3ZlIHRoZSBsb2dnaW5n
CisgICAgICAgIGNvZGUgdG8gUGFnZS4KKworICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpQYWdlOjpsb2dTdWJtaXR0ZWRJbWFnZU9yTWVkaWFGaWxlcyk6CisgICAg
ICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YTo6aW1hZ2VPck1lZGlhRmlsZXNDb3VudCBj
b25zdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oOgorICAgICAgICAq
IHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpYTUxIdHRwUmVxdWVz
dDo6c2VuZCk6CisKIDIwMjEtMDUtMTAgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBs
ZS5jb20+CiAKICAgICAgICAgW21hY09TXSBJbWFnZU92ZXJsYXlDb250cm9sbGVyIHNob3VsZCBw
YWludCBzZWxlY3Rpb24gcXVhZHMgaW5zdGVhZCBvZiBib3VuZGluZyByZWN0cwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IGI4OGQ0NDVjM2U0NmZlNTBhOTk0M2U3
YjQ0YjMzNjNlNzY4MWJiMjkuLmI4MzQwYzRmNDU1YjgzNTIyYTNkYjFlY2M1M2MxODYwZjhlMTdi
MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKQEAgLTQ2LDcgKzQ2
LDYgQEAKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCiAjaW5jbHVkZSAiSFRNTFRhYmxl
RWxlbWVudC5oIgogI2luY2x1ZGUgIklucHV0VHlwZU5hbWVzLmgiCi0jaW5jbHVkZSAiTUlNRVR5
cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIk1peGVkQ29udGVudENoZWNrZXIuaCIKICNpbmNsdWRl
ICJOb2RlUmFyZURhdGEuaCIKICNpbmNsdWRlICJQYWdlLmgiCkBAIC0zOTksMjggKzM5OCwxNCBA
QCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6c3VibWl0KEV2ZW50KiBldmVudCwgYm9vbCBhY3RpdmF0
ZVN1Ym1pdEJ1dHRvbiwgYm9vbCBwcm9jZQogICAgIGlmIChtX3BsYW5uZWRGb3JtU3VibWlzc2lv
bikKICAgICAgICAgbV9wbGFubmVkRm9ybVN1Ym1pc3Npb24tPmNhbmNlbCgpOwogCi0gICAgdW5z
aWduZWQgaW1hZ2VPck1lZGlhRmlsZXMgPSAwOwotICAgIGZvciAoYXV0byYgZGF0YUVsZW1lbnQg
OiBmb3JtU3VibWlzc2lvbi0+ZGF0YSgpLmVsZW1lbnRzKCkpIHsKLSAgICAgICAgYXV0byogZW5j
b2RlZEZpbGVEYXRhID0gV1RGOjpnZXRfaWY8Rm9ybURhdGFFbGVtZW50OjpFbmNvZGVkRmlsZURh
dGE+KGRhdGFFbGVtZW50LmRhdGEpOwotICAgICAgICBpZiAoIWVuY29kZWRGaWxlRGF0YSkKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGF1dG8gbWltZVR5cGUgPSBNSU1FVHlwZVJl
Z2lzdHJ5OjptaW1lVHlwZUZvclBhdGgoZW5jb2RlZEZpbGVEYXRhLT5maWxlbmFtZSk7Ci0gICAg
ICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc1N1cHBvcnRlZEltYWdlTUlNRVR5cGUobWltZVR5
cGUpIHx8IE1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkTWVkaWFNSU1FVHlwZShtaW1lVHlw
ZSkpCi0gICAgICAgICAgICArK2ltYWdlT3JNZWRpYUZpbGVzOwotICAgIH0KLQorICAgIHVuc2ln
bmVkIGltYWdlT3JNZWRpYUZpbGVzQ291bnQgPSBmb3JtU3VibWlzc2lvbi0+ZGF0YSgpLmltYWdl
T3JNZWRpYUZpbGVzQ291bnQoKTsKICAgICBtX3BsYW5uZWRGb3JtU3VibWlzc2lvbiA9IG1ha2VX
ZWFrUHRyKGZvcm1TdWJtaXNzaW9uLmdldCgpKTsKICAgICBmcmFtZS0+bG9hZGVyKCkuc3VibWl0
Rm9ybShXVEZNb3ZlKGZvcm1TdWJtaXNzaW9uKSk7CiAKICAgICBpZiAoZmlyc3RTdWNjZXNzZnVs
U3VibWl0QnV0dG9uKQogICAgICAgICBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFj
dGl2YXRlZFN1Ym1pdChmYWxzZSk7CiAKLSAgICBpZiAoaW1hZ2VPck1lZGlhRmlsZXMpIHsKLSAg
ICAgICAgYXV0byYgZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgPSBkb2N1bWVudCgpLnBhZ2UoKS0+
ZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoKTsKLSAgICAgICAgYXV0byBtZXNzYWdlID0gbWFrZVN0
cmluZyhpbWFnZU9yTWVkaWFGaWxlcywgaW1hZ2VPck1lZGlhRmlsZXMgPT0gMSA/ICIgbWVkaWEg
ZmlsZSBoYXMgYmVlbiBzdWJtaXR0ZWQiIDogIiBtZWRpYSBmaWxlcyBoYXZlIGJlZW4gc3VibWl0
dGVkIik7Ci0gICAgICAgIGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmxvZ0RpYWdub3N0aWNNZXNz
YWdlV2l0aERvbWFpbihtZXNzYWdlLCBEaWFnbm9zdGljTG9nZ2luZ0RvbWFpbjo6TWVkaWEpOwot
ICAgIH0KKyAgICBkb2N1bWVudCgpLnBhZ2UoKS0+bG9nU3VibWl0dGVkSW1hZ2VPck1lZGlhRmls
ZXMoaW1hZ2VPck1lZGlhRmlsZXNDb3VudCk7CiAKICAgICBtX3Nob3VsZFN1Ym1pdCA9IGZhbHNl
OwogICAgIG1faXNTdWJtaXR0aW5nT3JQcmVwYXJpbmdGb3JTdWJtaXNzaW9uID0gZmFsc2U7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QYWdlLmNwcAppbmRleCAwM2Y4MjMyMGJjMjFjNDJmZjhlZmJkMDI2NGFkMDk5MGMwNTIy
ZDkwLi40ZDY2MjBhMzI5NTdhM2E0NzNhZWMxNmJmNzcyMzJiMTIxZjk0MDM5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGFnZS5jcHAKQEAgLTEwNTMsNiArMTA1MywxNCBAQCBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCYg
UGFnZTo6ZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoKSBjb25zdAogICAgIHJldHVybiAqbV9kaWFn
bm9zdGljTG9nZ2luZ0NsaWVudDsKIH0KIAordm9pZCBQYWdlOjpsb2dTdWJtaXR0ZWRJbWFnZU9y
TWVkaWFGaWxlcyh1bnNpZ25lZCBpbWFnZU9yTWVkaWFGaWxlc0NvdW50KQoreworICAgIGlmICgh
aW1hZ2VPck1lZGlhRmlsZXNDb3VudCkKKyAgICAgICAgcmV0dXJuOworICAgIGF1dG8gbWVzc2Fn
ZSA9IG1ha2VTdHJpbmcoaW1hZ2VPck1lZGlhRmlsZXMsIGltYWdlT3JNZWRpYUZpbGVzQ291bnQg
PT0gMSA/ICIgbWVkaWEgZmlsZSBoYXMgYmVlbiBzdWJtaXR0ZWQiIDogIiBtZWRpYSBmaWxlcyBo
YXZlIGJlZW4gc3VibWl0dGVkIik7CisgICAgZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoKS5sb2dE
aWFnbm9zdGljTWVzc2FnZVdpdGhEb21haW4obWVzc2FnZSwgRGlhZ25vc3RpY0xvZ2dpbmdEb21h
aW46Ok1lZGlhKTsKK30KKwogdm9pZCBQYWdlOjpzZXRNZWRpYVZvbHVtZShmbG9hdCB2b2x1bWUp
CiB7CiAgICAgaWYgKCEodm9sdW1lID49IDAgJiYgdm9sdW1lIDw9IDEpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaApp
bmRleCA2ZGQwN2UxYmE5MWYzMTRkYTYwZTJhZjNjNzQwOWNhNTM4MmVkZTUxLi5kYWVlNjcyYmVi
N2VmOWY0MjRlZDUyY2MyMjc4OTRhYTJjNzU0OTYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL1BhZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaApAQCAtNDk1LDYg
KzQ5NSw4IEBAIHB1YmxpYzoKIAogICAgIFdFQkNPUkVfRVhQT1JUIERpYWdub3N0aWNMb2dnaW5n
Q2xpZW50JiBkaWFnbm9zdGljTG9nZ2luZ0NsaWVudCgpIGNvbnN0OwogCisgICAgdm9pZCBsb2dT
dWJtaXR0ZWRJbWFnZU9yTWVkaWFGaWxlcyh1bnNpZ25lZCBpbWFnZU9yTWVkaWFGaWxlc0NvdW50
KTsKKwogICAgIFBlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudCogcGVyZm9ybWFuY2VMb2dnaW5nQ2xp
ZW50KCkgY29uc3QgeyByZXR1cm4gbV9wZXJmb3JtYW5jZUxvZ2dpbmdDbGllbnQuZ2V0KCk7IH0K
IAogICAgIFdoZWVsRXZlbnREZWx0YUZpbHRlciogd2hlZWxFdmVudERlbHRhRmlsdGVyKCkgeyBy
ZXR1cm4gbV9yZWNlbnRXaGVlbEV2ZW50RGVsdGFGaWx0ZXIuZ2V0KCk7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5jcHAKaW5kZXggZDUxNzYzMWJlNWVhODA4
MzFmODg5ZDhjODc4MjFiMmIyY2ExYWRjMS4uZWU2YmRjZjllY2E5MjBkMGQwOTQ2ZTM0NGM5OTZi
NjZkNmE5YWUxYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9G
b3JtRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0
YS5jcHAKQEAgLTI4LDYgKzI4LDcgQEAKICNpbmNsdWRlICJET01Gb3JtRGF0YS5oIgogI2luY2x1
ZGUgIkZpbGUuaCIKICNpbmNsdWRlICJGb3JtRGF0YUJ1aWxkZXIuaCIKKyNpbmNsdWRlICJNSU1F
VHlwZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZl
ci5oIgogI2luY2x1ZGUgIlRleHRFbmNvZGluZy5oIgpAQCAtMTIzLDYgKzEyNCwyMSBAQCBSZWY8
Rm9ybURhdGE+IEZvcm1EYXRhOjppc29sYXRlZENvcHkoKSBjb25zdAogICAgIHJldHVybiBmb3Jt
RGF0YTsKIH0KIAordW5zaWduZWQgRm9ybURhdGE6OmltYWdlT3JNZWRpYUZpbGVzQ291bnQoKSBj
b25zdAoreworICAgIHVuc2lnbmVkIGltYWdlT3JNZWRpYUZpbGVzQ291bnQgPSAwOworICAgIGZv
ciAoYXV0byYgZWxlbWVudCA6IG1fZWxlbWVudHMpIHsKKyAgICAgICAgYXV0byogZW5jb2RlZEZp
bGVEYXRhID0gV1RGOjpnZXRfaWY8Rm9ybURhdGFFbGVtZW50OjpFbmNvZGVkRmlsZURhdGE+KGVs
ZW1lbnQuZGF0YSk7CisgICAgICAgIGlmICghZW5jb2RlZEZpbGVEYXRhKQorICAgICAgICAgICAg
Y29udGludWU7CisKKyAgICAgICAgYXV0byBtaW1lVHlwZSA9IE1JTUVUeXBlUmVnaXN0cnk6Om1p
bWVUeXBlRm9yUGF0aChlbmNvZGVkRmlsZURhdGEtPmZpbGVuYW1lKTsKKyAgICAgICAgaWYgKE1J
TUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkSW1hZ2VNSU1FVHlwZShtaW1lVHlwZSkgfHwgTUlN
RVR5cGVSZWdpc3RyeTo6aXNTdXBwb3J0ZWRNZWRpYU1JTUVUeXBlKG1pbWVUeXBlKSkKKyAgICAg
ICAgICAgICsraW1hZ2VPck1lZGlhRmlsZXNDb3VudDsKKyAgICB9CisgICAgcmV0dXJuIGltYWdl
T3JNZWRpYUZpbGVzQ291bnQ7Cit9CisKIHVpbnQ2NF90IEZvcm1EYXRhRWxlbWVudDo6bGVuZ3Ro
SW5CeXRlcyhjb25zdCBGdW5jdGlvbjx1aW50NjRfdChjb25zdCBVUkwmKT4mIGJsb2JTaXplKSBj
b25zdAogewogICAgIHJldHVybiBzd2l0Y2hPbihkYXRhLApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9Gb3JtRGF0YS5oCmluZGV4IGE5ZjQzYzEyOWE1N2VhM2M4NDA4NDU2OTM0NTY1
Y2Y3ZWU0ZDRjZTYuLjU1MzlhZjJlYjZkMGY1YWM3ODBjOGJiN2M5YjEyMzNmN2NjYzljMTEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmgKQEAgLTI0MSw2ICsy
NDEsNyBAQCBwdWJsaWM6CiAKICAgICBib29sIGNvbnRhaW5zUGFzc3dvcmREYXRhKCkgY29uc3Qg
eyByZXR1cm4gbV9jb250YWluc1Bhc3N3b3JkRGF0YTsgfQogICAgIHZvaWQgc2V0Q29udGFpbnNQ
YXNzd29yZERhdGEoYm9vbCBjb250YWluc1Bhc3N3b3JkRGF0YSkgeyBtX2NvbnRhaW5zUGFzc3dv
cmREYXRhID0gY29udGFpbnNQYXNzd29yZERhdGE7IH0KKyAgICB1bnNpZ25lZCBpbWFnZU9yTWVk
aWFGaWxlc0NvdW50KCkgY29uc3Q7CiAKICAgICBzdGF0aWMgRW5jb2RpbmdUeXBlIHBhcnNlRW5j
b2RpbmdUeXBlKGNvbnN0IFN0cmluZyYgdHlwZSkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwIGIvU291cmNlL1dlYkNvcmUveG1sL1hNTEh0
dHBSZXF1ZXN0LmNwcAppbmRleCA4MGRkZDNkZTNlZGM0MjRlMzcwZTU2OTlhODEzZDZlOWVlNGZi
ZTAzLi4yZjRhYWM0MmE0OGI5ODIyMDg0YTk1MThlY2U2YmFmODRkYmY4Yzk0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS94bWwvWE1MSHR0cFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAKQEAgLTU0Niw2ICs1NDYsOCBAQCBFeGNlcHRpb25P
cjx2b2lkPiBYTUxIdHRwUmVxdWVzdDo6c2VuZChET01Gb3JtRGF0YSYgYm9keSkKICAgICAgICAg
bV9yZXF1ZXN0RW50aXR5Qm9keSA9IEZvcm1EYXRhOjpjcmVhdGVNdWx0aVBhcnQoYm9keSk7CiAg
ICAgICAgIGlmICghbV9yZXF1ZXN0SGVhZGVycy5jb250YWlucyhIVFRQSGVhZGVyTmFtZTo6Q29u
dGVudFR5cGUpKQogICAgICAgICAgICAgbV9yZXF1ZXN0SGVhZGVycy5zZXQoSFRUUEhlYWRlck5h
bWU6OkNvbnRlbnRUeXBlLCBtYWtlU3RyaW5nKCJtdWx0aXBhcnQvZm9ybS1kYXRhOyBib3VuZGFy
eT0iLCBtX3JlcXVlc3RFbnRpdHlCb2R5LT5ib3VuZGFyeSgpLmRhdGEoKSkpOworICAgICAgICBp
ZiAoZG9jdW1lbnQoKSAmJiBkb2N1bWVudCgpLT5wYWdlKCkpCisgICAgICAgICAgICBkb2N1bWVu
dCgpLT5wYWdlKCktPmxvZ1N1Ym1pdHRlZEltYWdlT3JNZWRpYUZpbGVzKG1fcmVxdWVzdEVudGl0
eUJvZHktPmltYWdlT3JNZWRpYUZpbGVzQ291bnQoKSk7CiAgICAgfQogCiAgICAgcmV0dXJuIGNy
ZWF0ZVJlcXVlc3QoKTsK
</data>
<flag name="commit-queue"
          id="449123"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428254</attachid>
            <date>2021-05-11 00:34:31 -0700</date>
            <delta_ts>2021-05-11 11:29:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225636-20210511003430.patch</filename>
            <type>text/plain</type>
            <size>7772</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWNlZjkyN2U0NTMzMDY2
Yjg5ZTlhZTIzNDY4ZWE4OTE4MTZiYjI3Yi4uMWFkNjJhNzZmZDg4NjJkOWQ4Mzc0MDFiNjY4MGFm
ZDkwN2IwMzZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIxLTA1LTEwICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIEFsbG93IGxvZ2dpbmcg
bWluaW1hbCBpbmZvIGFib3V0IHNlbmRpbmcgbWVkaWEgZmlsZXMgdGhyb3VnaCBYTUxIdHRwUmVx
dWVzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1
NjM2CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjYzOTEzOD4KKworICAgICAgICBVc3VhbGx5
IHRoZSBmaWxlcyBhcmUgdXBsb2FkZWQgdGhyb3VnaCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdC4g
QnV0IGluCisgICAgICAgIHNvbWUgY2FzZXMsIHRoZSBKYXZhU2NyaXB0IHNlbmRzIHRoZSBjb250
ZW50IG9mIHRoZSBmaWxlIHRvIHRoZSBzZXJ2ZXIKKyAgICAgICAgdGhyb3VnaCBYTUxIdHRwUmVx
dWVzdC4gV2UgbmVlZCB0byBhbGxvdyBsb2dnaW5nIHRoZSB1cGxvYWQgaW5mbyBpbiB0aGlzCisg
ICAgICAgIGNhc2UgYXMgd2VsbC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGh0bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KToKKyAgICAgICAgTW92ZSBkZXRlY3RpbmcgdGhl
IGltYWdlcyBhbmQgbWVkaWEgZmlsZXMgdG8gRm9ybURhdGEuIEFuZCBtb3ZlIHRoZSBsb2dnaW5n
CisgICAgICAgIGNvZGUgdG8gUGFnZS4KKworICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpQYWdlOjpsb2dTdWJtaXR0ZWRJbWFnZU9yTWVkaWFGaWxlcyk6CisgICAg
ICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YTo6aW1hZ2VPck1lZGlhRmlsZXNDb3VudCBj
b25zdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oOgorICAgICAgICAq
IHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpYTUxIdHRwUmVxdWVz
dDo6c2VuZCk6CisKIDIwMjEtMDUtMTAgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBs
ZS5jb20+CiAKICAgICAgICAgW21hY09TXSBJbWFnZU92ZXJsYXlDb250cm9sbGVyIHNob3VsZCBw
YWludCBzZWxlY3Rpb24gcXVhZHMgaW5zdGVhZCBvZiBib3VuZGluZyByZWN0cwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IGI4OGQ0NDVjM2U0NmZlNTBhOTk0M2U3
YjQ0YjMzNjNlNzY4MWJiMjkuLmI4MzQwYzRmNDU1YjgzNTIyYTNkYjFlY2M1M2MxODYwZjhlMTdi
MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKQEAgLTQ2LDcgKzQ2
LDYgQEAKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCiAjaW5jbHVkZSAiSFRNTFRhYmxl
RWxlbWVudC5oIgogI2luY2x1ZGUgIklucHV0VHlwZU5hbWVzLmgiCi0jaW5jbHVkZSAiTUlNRVR5
cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIk1peGVkQ29udGVudENoZWNrZXIuaCIKICNpbmNsdWRl
ICJOb2RlUmFyZURhdGEuaCIKICNpbmNsdWRlICJQYWdlLmgiCkBAIC0zOTksMjggKzM5OCwxNCBA
QCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6c3VibWl0KEV2ZW50KiBldmVudCwgYm9vbCBhY3RpdmF0
ZVN1Ym1pdEJ1dHRvbiwgYm9vbCBwcm9jZQogICAgIGlmIChtX3BsYW5uZWRGb3JtU3VibWlzc2lv
bikKICAgICAgICAgbV9wbGFubmVkRm9ybVN1Ym1pc3Npb24tPmNhbmNlbCgpOwogCi0gICAgdW5z
aWduZWQgaW1hZ2VPck1lZGlhRmlsZXMgPSAwOwotICAgIGZvciAoYXV0byYgZGF0YUVsZW1lbnQg
OiBmb3JtU3VibWlzc2lvbi0+ZGF0YSgpLmVsZW1lbnRzKCkpIHsKLSAgICAgICAgYXV0byogZW5j
b2RlZEZpbGVEYXRhID0gV1RGOjpnZXRfaWY8Rm9ybURhdGFFbGVtZW50OjpFbmNvZGVkRmlsZURh
dGE+KGRhdGFFbGVtZW50LmRhdGEpOwotICAgICAgICBpZiAoIWVuY29kZWRGaWxlRGF0YSkKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGF1dG8gbWltZVR5cGUgPSBNSU1FVHlwZVJl
Z2lzdHJ5OjptaW1lVHlwZUZvclBhdGgoZW5jb2RlZEZpbGVEYXRhLT5maWxlbmFtZSk7Ci0gICAg
ICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc1N1cHBvcnRlZEltYWdlTUlNRVR5cGUobWltZVR5
cGUpIHx8IE1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkTWVkaWFNSU1FVHlwZShtaW1lVHlw
ZSkpCi0gICAgICAgICAgICArK2ltYWdlT3JNZWRpYUZpbGVzOwotICAgIH0KLQorICAgIHVuc2ln
bmVkIGltYWdlT3JNZWRpYUZpbGVzQ291bnQgPSBmb3JtU3VibWlzc2lvbi0+ZGF0YSgpLmltYWdl
T3JNZWRpYUZpbGVzQ291bnQoKTsKICAgICBtX3BsYW5uZWRGb3JtU3VibWlzc2lvbiA9IG1ha2VX
ZWFrUHRyKGZvcm1TdWJtaXNzaW9uLmdldCgpKTsKICAgICBmcmFtZS0+bG9hZGVyKCkuc3VibWl0
Rm9ybShXVEZNb3ZlKGZvcm1TdWJtaXNzaW9uKSk7CiAKICAgICBpZiAoZmlyc3RTdWNjZXNzZnVs
U3VibWl0QnV0dG9uKQogICAgICAgICBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFj
dGl2YXRlZFN1Ym1pdChmYWxzZSk7CiAKLSAgICBpZiAoaW1hZ2VPck1lZGlhRmlsZXMpIHsKLSAg
ICAgICAgYXV0byYgZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgPSBkb2N1bWVudCgpLnBhZ2UoKS0+
ZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoKTsKLSAgICAgICAgYXV0byBtZXNzYWdlID0gbWFrZVN0
cmluZyhpbWFnZU9yTWVkaWFGaWxlcywgaW1hZ2VPck1lZGlhRmlsZXMgPT0gMSA/ICIgbWVkaWEg
ZmlsZSBoYXMgYmVlbiBzdWJtaXR0ZWQiIDogIiBtZWRpYSBmaWxlcyBoYXZlIGJlZW4gc3VibWl0
dGVkIik7Ci0gICAgICAgIGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmxvZ0RpYWdub3N0aWNNZXNz
YWdlV2l0aERvbWFpbihtZXNzYWdlLCBEaWFnbm9zdGljTG9nZ2luZ0RvbWFpbjo6TWVkaWEpOwot
ICAgIH0KKyAgICBkb2N1bWVudCgpLnBhZ2UoKS0+bG9nU3VibWl0dGVkSW1hZ2VPck1lZGlhRmls
ZXMoaW1hZ2VPck1lZGlhRmlsZXNDb3VudCk7CiAKICAgICBtX3Nob3VsZFN1Ym1pdCA9IGZhbHNl
OwogICAgIG1faXNTdWJtaXR0aW5nT3JQcmVwYXJpbmdGb3JTdWJtaXNzaW9uID0gZmFsc2U7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QYWdlLmNwcAppbmRleCAwM2Y4MjMyMGJjMjFjNDJmZjhlZmJkMDI2NGFkMDk5MGMwNTIy
ZDkwLi40ZjJlYjhiYTg3ZmI3NzZhNzQ2NGViMzE2MDRiNDFmZGIxY2E3YzEwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGFnZS5jcHAKQEAgLTEwNTMsNiArMTA1MywxNCBAQCBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCYg
UGFnZTo6ZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoKSBjb25zdAogICAgIHJldHVybiAqbV9kaWFn
bm9zdGljTG9nZ2luZ0NsaWVudDsKIH0KIAordm9pZCBQYWdlOjpsb2dTdWJtaXR0ZWRJbWFnZU9y
TWVkaWFGaWxlcyh1bnNpZ25lZCBpbWFnZU9yTWVkaWFGaWxlc0NvdW50KQoreworICAgIGlmICgh
aW1hZ2VPck1lZGlhRmlsZXNDb3VudCkKKyAgICAgICAgcmV0dXJuOworICAgIGF1dG8gbWVzc2Fn
ZSA9IG1ha2VTdHJpbmcoaW1hZ2VPck1lZGlhRmlsZXNDb3VudCwgaW1hZ2VPck1lZGlhRmlsZXND
b3VudCA9PSAxID8gIiBtZWRpYSBmaWxlIGhhcyBiZWVuIHN1Ym1pdHRlZCIgOiAiIG1lZGlhIGZp
bGVzIGhhdmUgYmVlbiBzdWJtaXR0ZWQiKTsKKyAgICBkaWFnbm9zdGljTG9nZ2luZ0NsaWVudCgp
LmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aERvbWFpbihtZXNzYWdlLCBEaWFnbm9zdGljTG9nZ2lu
Z0RvbWFpbjo6TWVkaWEpOworfQorCiB2b2lkIFBhZ2U6OnNldE1lZGlhVm9sdW1lKGZsb2F0IHZv
bHVtZSkKIHsKICAgICBpZiAoISh2b2x1bWUgPj0gMCAmJiB2b2x1bWUgPD0gMSkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFn
ZS5oCmluZGV4IDZkZDA3ZTFiYTkxZjMxNGRhNjBlMmFmM2M3NDA5Y2E1MzgyZWRlNTEuLmRhZWU2
NzJiZWI3ZWY5ZjQyNGVkNTJjYzIyNzg5NGFhMmM3NTQ5NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5oCkBAIC00
OTUsNiArNDk1LDggQEAgcHVibGljOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgRGlhZ25vc3RpY0xv
Z2dpbmdDbGllbnQmIGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkgY29uc3Q7CiAKKyAgICB2b2lk
IGxvZ1N1Ym1pdHRlZEltYWdlT3JNZWRpYUZpbGVzKHVuc2lnbmVkIGltYWdlT3JNZWRpYUZpbGVz
Q291bnQpOworCiAgICAgUGVyZm9ybWFuY2VMb2dnaW5nQ2xpZW50KiBwZXJmb3JtYW5jZUxvZ2dp
bmdDbGllbnQoKSBjb25zdCB7IHJldHVybiBtX3BlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudC5nZXQo
KTsgfQogCiAgICAgV2hlZWxFdmVudERlbHRhRmlsdGVyKiB3aGVlbEV2ZW50RGVsdGFGaWx0ZXIo
KSB7IHJldHVybiBtX3JlY2VudFdoZWVsRXZlbnREZWx0YUZpbHRlci5nZXQoKTsgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcAppbmRleCBkNTE3NjMxYmU1
ZWE4MDgzMWY4ODlkOGM4NzgyMWIyYjJjYTFhZGMxLi5lZTZiZGNmOWVjYTkyMGQwZDA5NDZlMzQ0
Yzk5NmI2NmQ2YTlhZTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL0Zvcm1EYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zv
cm1EYXRhLmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkRPTUZvcm1EYXRhLmgiCiAj
aW5jbHVkZSAiRmlsZS5oIgogI2luY2x1ZGUgIkZvcm1EYXRhQnVpbGRlci5oIgorI2luY2x1ZGUg
Ik1JTUVUeXBlUmVnaXN0cnkuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiU2hhcmVk
QnVmZmVyLmgiCiAjaW5jbHVkZSAiVGV4dEVuY29kaW5nLmgiCkBAIC0xMjMsNiArMTI0LDIxIEBA
IFJlZjxGb3JtRGF0YT4gRm9ybURhdGE6Omlzb2xhdGVkQ29weSgpIGNvbnN0CiAgICAgcmV0dXJu
IGZvcm1EYXRhOwogfQogCit1bnNpZ25lZCBGb3JtRGF0YTo6aW1hZ2VPck1lZGlhRmlsZXNDb3Vu
dCgpIGNvbnN0Cit7CisgICAgdW5zaWduZWQgaW1hZ2VPck1lZGlhRmlsZXNDb3VudCA9IDA7Cisg
ICAgZm9yIChhdXRvJiBlbGVtZW50IDogbV9lbGVtZW50cykgeworICAgICAgICBhdXRvKiBlbmNv
ZGVkRmlsZURhdGEgPSBXVEY6OmdldF9pZjxGb3JtRGF0YUVsZW1lbnQ6OkVuY29kZWRGaWxlRGF0
YT4oZWxlbWVudC5kYXRhKTsKKyAgICAgICAgaWYgKCFlbmNvZGVkRmlsZURhdGEpCisgICAgICAg
ICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvIG1pbWVUeXBlID0gTUlNRVR5cGVSZWdpc3Ry
eTo6bWltZVR5cGVGb3JQYXRoKGVuY29kZWRGaWxlRGF0YS0+ZmlsZW5hbWUpOworICAgICAgICBp
ZiAoTUlNRVR5cGVSZWdpc3RyeTo6aXNTdXBwb3J0ZWRJbWFnZU1JTUVUeXBlKG1pbWVUeXBlKSB8
fCBNSU1FVHlwZVJlZ2lzdHJ5Ojppc1N1cHBvcnRlZE1lZGlhTUlNRVR5cGUobWltZVR5cGUpKQor
ICAgICAgICAgICAgKytpbWFnZU9yTWVkaWFGaWxlc0NvdW50OworICAgIH0KKyAgICByZXR1cm4g
aW1hZ2VPck1lZGlhRmlsZXNDb3VudDsKK30KKwogdWludDY0X3QgRm9ybURhdGFFbGVtZW50Ojps
ZW5ndGhJbkJ5dGVzKGNvbnN0IEZ1bmN0aW9uPHVpbnQ2NF90KGNvbnN0IFVSTCYpPiYgYmxvYlNp
emUpIGNvbnN0CiB7CiAgICAgcmV0dXJuIHN3aXRjaE9uKGRhdGEsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmgKaW5kZXggYTlmNDNjMTI5YTU3ZWEzYzg0MDg0NTY5
MzQ1NjVjZjdlZTRkNGNlNi4uNTUzOWFmMmViNmQwZjVhYzc4MGM4YmI3YzliMTIzM2Y3Y2NjOWMx
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaApAQCAtMjQx
LDYgKzI0MSw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgY29udGFpbnNQYXNzd29yZERhdGEoKSBj
b25zdCB7IHJldHVybiBtX2NvbnRhaW5zUGFzc3dvcmREYXRhOyB9CiAgICAgdm9pZCBzZXRDb250
YWluc1Bhc3N3b3JkRGF0YShib29sIGNvbnRhaW5zUGFzc3dvcmREYXRhKSB7IG1fY29udGFpbnNQ
YXNzd29yZERhdGEgPSBjb250YWluc1Bhc3N3b3JkRGF0YTsgfQorICAgIHVuc2lnbmVkIGltYWdl
T3JNZWRpYUZpbGVzQ291bnQoKSBjb25zdDsKIAogICAgIHN0YXRpYyBFbmNvZGluZ1R5cGUgcGFy
c2VFbmNvZGluZ1R5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQogICAgIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwv
WE1MSHR0cFJlcXVlc3QuY3BwCmluZGV4IDgwZGRkM2RlM2VkYzQyNGUzNzBlNTY5OWE4MTNkNmU5
ZWU0ZmJlMDMuLjJmNGFhYzQyYTQ4Yjk4MjIwODRhOTUxOGVjZTZiYWY4NGRiZjhjOTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcApAQCAtNTQ2LDYgKzU0Niw4IEBAIEV4Y2Vw
dGlvbk9yPHZvaWQ+IFhNTEh0dHBSZXF1ZXN0OjpzZW5kKERPTUZvcm1EYXRhJiBib2R5KQogICAg
ICAgICBtX3JlcXVlc3RFbnRpdHlCb2R5ID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydChib2R5
KTsKICAgICAgICAgaWYgKCFtX3JlcXVlc3RIZWFkZXJzLmNvbnRhaW5zKEhUVFBIZWFkZXJOYW1l
OjpDb250ZW50VHlwZSkpCiAgICAgICAgICAgICBtX3JlcXVlc3RIZWFkZXJzLnNldChIVFRQSGVh
ZGVyTmFtZTo6Q29udGVudFR5cGUsIG1ha2VTdHJpbmcoIm11bHRpcGFydC9mb3JtLWRhdGE7IGJv
dW5kYXJ5PSIsIG1fcmVxdWVzdEVudGl0eUJvZHktPmJvdW5kYXJ5KCkuZGF0YSgpKSk7CisgICAg
ICAgIGlmIChkb2N1bWVudCgpICYmIGRvY3VtZW50KCktPnBhZ2UoKSkKKyAgICAgICAgICAgIGRv
Y3VtZW50KCktPnBhZ2UoKS0+bG9nU3VibWl0dGVkSW1hZ2VPck1lZGlhRmlsZXMobV9yZXF1ZXN0
RW50aXR5Qm9keS0+aW1hZ2VPck1lZGlhRmlsZXNDb3VudCgpKTsKICAgICB9CiAKICAgICByZXR1
cm4gY3JlYXRlUmVxdWVzdCgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428302</attachid>
            <date>2021-05-11 11:29:17 -0700</date>
            <delta_ts>2021-05-14 20:21:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225636-20210511112916.patch</filename>
            <type>text/plain</type>
            <size>7807</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3Mjc1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWNlZjkyN2U0NTMzMDY2
Yjg5ZTlhZTIzNDY4ZWE4OTE4MTZiYjI3Yi4uMWFkNjJhNzZmZDg4NjJkOWQ4Mzc0MDFiNjY4MGFm
ZDkwN2IwMzZmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIxLTA1LTEwICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIEFsbG93IGxvZ2dpbmcg
bWluaW1hbCBpbmZvIGFib3V0IHNlbmRpbmcgbWVkaWEgZmlsZXMgdGhyb3VnaCBYTUxIdHRwUmVx
dWVzdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1
NjM2CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS83NjYzOTEzOD4KKworICAgICAgICBVc3VhbGx5
IHRoZSBmaWxlcyBhcmUgdXBsb2FkZWQgdGhyb3VnaCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdC4g
QnV0IGluCisgICAgICAgIHNvbWUgY2FzZXMsIHRoZSBKYXZhU2NyaXB0IHNlbmRzIHRoZSBjb250
ZW50IG9mIHRoZSBmaWxlIHRvIHRoZSBzZXJ2ZXIKKyAgICAgICAgdGhyb3VnaCBYTUxIdHRwUmVx
dWVzdC4gV2UgbmVlZCB0byBhbGxvdyBsb2dnaW5nIHRoZSB1cGxvYWQgaW5mbyBpbiB0aGlzCisg
ICAgICAgIGNhc2UgYXMgd2VsbC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGh0bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxGb3JtRWxlbWVudDo6c3VibWl0KToKKyAgICAgICAgTW92ZSBkZXRlY3RpbmcgdGhl
IGltYWdlcyBhbmQgbWVkaWEgZmlsZXMgdG8gRm9ybURhdGEuIEFuZCBtb3ZlIHRoZSBsb2dnaW5n
CisgICAgICAgIGNvZGUgdG8gUGFnZS4KKworICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpQYWdlOjpsb2dTdWJtaXR0ZWRJbWFnZU9yTWVkaWFGaWxlcyk6CisgICAg
ICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YTo6aW1hZ2VPck1lZGlhRmlsZXNDb3VudCBj
b25zdCk6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oOgorICAgICAgICAq
IHhtbC9YTUxIdHRwUmVxdWVzdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpYTUxIdHRwUmVxdWVz
dDo6c2VuZCk6CisKIDIwMjEtMDUtMTAgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBs
ZS5jb20+CiAKICAgICAgICAgW21hY09TXSBJbWFnZU92ZXJsYXlDb250cm9sbGVyIHNob3VsZCBw
YWludCBzZWxlY3Rpb24gcXVhZHMgaW5zdGVhZCBvZiBib3VuZGluZyByZWN0cwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IGI4OGQ0NDVjM2U0NmZlNTBhOTk0M2U3
YjQ0YjMzNjNlNzY4MWJiMjkuLmI4MzQwYzRmNDU1YjgzNTIyYTNkYjFlY2M1M2MxODYwZjhlMTdi
MmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKQEAgLTQ2LDcgKzQ2
LDYgQEAKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCiAjaW5jbHVkZSAiSFRNTFRhYmxl
RWxlbWVudC5oIgogI2luY2x1ZGUgIklucHV0VHlwZU5hbWVzLmgiCi0jaW5jbHVkZSAiTUlNRVR5
cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIk1peGVkQ29udGVudENoZWNrZXIuaCIKICNpbmNsdWRl
ICJOb2RlUmFyZURhdGEuaCIKICNpbmNsdWRlICJQYWdlLmgiCkBAIC0zOTksMjggKzM5OCwxNCBA
QCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6c3VibWl0KEV2ZW50KiBldmVudCwgYm9vbCBhY3RpdmF0
ZVN1Ym1pdEJ1dHRvbiwgYm9vbCBwcm9jZQogICAgIGlmIChtX3BsYW5uZWRGb3JtU3VibWlzc2lv
bikKICAgICAgICAgbV9wbGFubmVkRm9ybVN1Ym1pc3Npb24tPmNhbmNlbCgpOwogCi0gICAgdW5z
aWduZWQgaW1hZ2VPck1lZGlhRmlsZXMgPSAwOwotICAgIGZvciAoYXV0byYgZGF0YUVsZW1lbnQg
OiBmb3JtU3VibWlzc2lvbi0+ZGF0YSgpLmVsZW1lbnRzKCkpIHsKLSAgICAgICAgYXV0byogZW5j
b2RlZEZpbGVEYXRhID0gV1RGOjpnZXRfaWY8Rm9ybURhdGFFbGVtZW50OjpFbmNvZGVkRmlsZURh
dGE+KGRhdGFFbGVtZW50LmRhdGEpOwotICAgICAgICBpZiAoIWVuY29kZWRGaWxlRGF0YSkKLSAg
ICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGF1dG8gbWltZVR5cGUgPSBNSU1FVHlwZVJl
Z2lzdHJ5OjptaW1lVHlwZUZvclBhdGgoZW5jb2RlZEZpbGVEYXRhLT5maWxlbmFtZSk7Ci0gICAg
ICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc1N1cHBvcnRlZEltYWdlTUlNRVR5cGUobWltZVR5
cGUpIHx8IE1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkTWVkaWFNSU1FVHlwZShtaW1lVHlw
ZSkpCi0gICAgICAgICAgICArK2ltYWdlT3JNZWRpYUZpbGVzOwotICAgIH0KLQorICAgIHVuc2ln
bmVkIGltYWdlT3JNZWRpYUZpbGVzQ291bnQgPSBmb3JtU3VibWlzc2lvbi0+ZGF0YSgpLmltYWdl
T3JNZWRpYUZpbGVzQ291bnQoKTsKICAgICBtX3BsYW5uZWRGb3JtU3VibWlzc2lvbiA9IG1ha2VX
ZWFrUHRyKGZvcm1TdWJtaXNzaW9uLmdldCgpKTsKICAgICBmcmFtZS0+bG9hZGVyKCkuc3VibWl0
Rm9ybShXVEZNb3ZlKGZvcm1TdWJtaXNzaW9uKSk7CiAKICAgICBpZiAoZmlyc3RTdWNjZXNzZnVs
U3VibWl0QnV0dG9uKQogICAgICAgICBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24tPnNldEFj
dGl2YXRlZFN1Ym1pdChmYWxzZSk7CiAKLSAgICBpZiAoaW1hZ2VPck1lZGlhRmlsZXMpIHsKLSAg
ICAgICAgYXV0byYgZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgPSBkb2N1bWVudCgpLnBhZ2UoKS0+
ZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoKTsKLSAgICAgICAgYXV0byBtZXNzYWdlID0gbWFrZVN0
cmluZyhpbWFnZU9yTWVkaWFGaWxlcywgaW1hZ2VPck1lZGlhRmlsZXMgPT0gMSA/ICIgbWVkaWEg
ZmlsZSBoYXMgYmVlbiBzdWJtaXR0ZWQiIDogIiBtZWRpYSBmaWxlcyBoYXZlIGJlZW4gc3VibWl0
dGVkIik7Ci0gICAgICAgIGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmxvZ0RpYWdub3N0aWNNZXNz
YWdlV2l0aERvbWFpbihtZXNzYWdlLCBEaWFnbm9zdGljTG9nZ2luZ0RvbWFpbjo6TWVkaWEpOwot
ICAgIH0KKyAgICBkb2N1bWVudCgpLnBhZ2UoKS0+bG9nU3VibWl0dGVkSW1hZ2VPck1lZGlhRmls
ZXMoaW1hZ2VPck1lZGlhRmlsZXNDb3VudCk7CiAKICAgICBtX3Nob3VsZFN1Ym1pdCA9IGZhbHNl
OwogICAgIG1faXNTdWJtaXR0aW5nT3JQcmVwYXJpbmdGb3JTdWJtaXNzaW9uID0gZmFsc2U7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QYWdlLmNwcAppbmRleCAwM2Y4MjMyMGJjMjFjNDJmZjhlZmJkMDI2NGFkMDk5MGMwNTIy
ZDkwLi40ZjJlYjhiYTg3ZmI3NzZhNzQ2NGViMzE2MDRiNDFmZGIxY2E3YzEwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGFnZS5jcHAKQEAgLTEwNTMsNiArMTA1MywxNCBAQCBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCYg
UGFnZTo6ZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoKSBjb25zdAogICAgIHJldHVybiAqbV9kaWFn
bm9zdGljTG9nZ2luZ0NsaWVudDsKIH0KIAordm9pZCBQYWdlOjpsb2dTdWJtaXR0ZWRJbWFnZU9y
TWVkaWFGaWxlcyh1bnNpZ25lZCBpbWFnZU9yTWVkaWFGaWxlc0NvdW50KQoreworICAgIGlmICgh
aW1hZ2VPck1lZGlhRmlsZXNDb3VudCkKKyAgICAgICAgcmV0dXJuOworICAgIGF1dG8gbWVzc2Fn
ZSA9IG1ha2VTdHJpbmcoaW1hZ2VPck1lZGlhRmlsZXNDb3VudCwgaW1hZ2VPck1lZGlhRmlsZXND
b3VudCA9PSAxID8gIiBtZWRpYSBmaWxlIGhhcyBiZWVuIHN1Ym1pdHRlZCIgOiAiIG1lZGlhIGZp
bGVzIGhhdmUgYmVlbiBzdWJtaXR0ZWQiKTsKKyAgICBkaWFnbm9zdGljTG9nZ2luZ0NsaWVudCgp
LmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aERvbWFpbihtZXNzYWdlLCBEaWFnbm9zdGljTG9nZ2lu
Z0RvbWFpbjo6TWVkaWEpOworfQorCiB2b2lkIFBhZ2U6OnNldE1lZGlhVm9sdW1lKGZsb2F0IHZv
bHVtZSkKIHsKICAgICBpZiAoISh2b2x1bWUgPj0gMCAmJiB2b2x1bWUgPD0gMSkpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFn
ZS5oCmluZGV4IDZkZDA3ZTFiYTkxZjMxNGRhNjBlMmFmM2M3NDA5Y2E1MzgyZWRlNTEuLmRhZWU2
NzJiZWI3ZWY5ZjQyNGVkNTJjYzIyNzg5NGFhMmM3NTQ5NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BhZ2UvUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5oCkBAIC00
OTUsNiArNDk1LDggQEAgcHVibGljOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgRGlhZ25vc3RpY0xv
Z2dpbmdDbGllbnQmIGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkgY29uc3Q7CiAKKyAgICB2b2lk
IGxvZ1N1Ym1pdHRlZEltYWdlT3JNZWRpYUZpbGVzKHVuc2lnbmVkIGltYWdlT3JNZWRpYUZpbGVz
Q291bnQpOworCiAgICAgUGVyZm9ybWFuY2VMb2dnaW5nQ2xpZW50KiBwZXJmb3JtYW5jZUxvZ2dp
bmdDbGllbnQoKSBjb25zdCB7IHJldHVybiBtX3BlcmZvcm1hbmNlTG9nZ2luZ0NsaWVudC5nZXQo
KTsgfQogCiAgICAgV2hlZWxFdmVudERlbHRhRmlsdGVyKiB3aGVlbEV2ZW50RGVsdGFGaWx0ZXIo
KSB7IHJldHVybiBtX3JlY2VudFdoZWVsRXZlbnREZWx0YUZpbHRlci5nZXQoKTsgfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcAppbmRleCBkNTE3NjMxYmU1
ZWE4MDgzMWY4ODlkOGM4NzgyMWIyYjJjYTFhZGMxLi5lZTZiZGNmOWVjYTkyMGQwZDA5NDZlMzQ0
Yzk5NmI2NmQ2YTlhZTFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3
b3JrL0Zvcm1EYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zv
cm1EYXRhLmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIkRPTUZvcm1EYXRhLmgiCiAj
aW5jbHVkZSAiRmlsZS5oIgogI2luY2x1ZGUgIkZvcm1EYXRhQnVpbGRlci5oIgorI2luY2x1ZGUg
Ik1JTUVUeXBlUmVnaXN0cnkuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiU2hhcmVk
QnVmZmVyLmgiCiAjaW5jbHVkZSAiVGV4dEVuY29kaW5nLmgiCkBAIC0xMjMsNiArMTI0LDIxIEBA
IFJlZjxGb3JtRGF0YT4gRm9ybURhdGE6Omlzb2xhdGVkQ29weSgpIGNvbnN0CiAgICAgcmV0dXJu
IGZvcm1EYXRhOwogfQogCit1bnNpZ25lZCBGb3JtRGF0YTo6aW1hZ2VPck1lZGlhRmlsZXNDb3Vu
dCgpIGNvbnN0Cit7CisgICAgdW5zaWduZWQgaW1hZ2VPck1lZGlhRmlsZXNDb3VudCA9IDA7Cisg
ICAgZm9yIChhdXRvJiBlbGVtZW50IDogbV9lbGVtZW50cykgeworICAgICAgICBhdXRvKiBlbmNv
ZGVkRmlsZURhdGEgPSBXVEY6OmdldF9pZjxGb3JtRGF0YUVsZW1lbnQ6OkVuY29kZWRGaWxlRGF0
YT4oZWxlbWVudC5kYXRhKTsKKyAgICAgICAgaWYgKCFlbmNvZGVkRmlsZURhdGEpCisgICAgICAg
ICAgICBjb250aW51ZTsKKworICAgICAgICBhdXRvIG1pbWVUeXBlID0gTUlNRVR5cGVSZWdpc3Ry
eTo6bWltZVR5cGVGb3JQYXRoKGVuY29kZWRGaWxlRGF0YS0+ZmlsZW5hbWUpOworICAgICAgICBp
ZiAoTUlNRVR5cGVSZWdpc3RyeTo6aXNTdXBwb3J0ZWRJbWFnZU1JTUVUeXBlKG1pbWVUeXBlKSB8
fCBNSU1FVHlwZVJlZ2lzdHJ5Ojppc1N1cHBvcnRlZE1lZGlhTUlNRVR5cGUobWltZVR5cGUpKQor
ICAgICAgICAgICAgKytpbWFnZU9yTWVkaWFGaWxlc0NvdW50OworICAgIH0KKyAgICByZXR1cm4g
aW1hZ2VPck1lZGlhRmlsZXNDb3VudDsKK30KKwogdWludDY0X3QgRm9ybURhdGFFbGVtZW50Ojps
ZW5ndGhJbkJ5dGVzKGNvbnN0IEZ1bmN0aW9uPHVpbnQ2NF90KGNvbnN0IFVSTCYpPiYgYmxvYlNp
emUpIGNvbnN0CiB7CiAgICAgcmV0dXJuIHN3aXRjaE9uKGRhdGEsCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmgKaW5kZXggYTlmNDNjMTI5YTU3ZWEzYzg0MDg0NTY5
MzQ1NjVjZjdlZTRkNGNlNi4uNTUzOWFmMmViNmQwZjVhYzc4MGM4YmI3YzliMTIzM2Y3Y2NjOWMx
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaApAQCAtMjQx
LDYgKzI0MSw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgY29udGFpbnNQYXNzd29yZERhdGEoKSBj
b25zdCB7IHJldHVybiBtX2NvbnRhaW5zUGFzc3dvcmREYXRhOyB9CiAgICAgdm9pZCBzZXRDb250
YWluc1Bhc3N3b3JkRGF0YShib29sIGNvbnRhaW5zUGFzc3dvcmREYXRhKSB7IG1fY29udGFpbnNQ
YXNzd29yZERhdGEgPSBjb250YWluc1Bhc3N3b3JkRGF0YTsgfQorICAgIHVuc2lnbmVkIGltYWdl
T3JNZWRpYUZpbGVzQ291bnQoKSBjb25zdDsKIAogICAgIHN0YXRpYyBFbmNvZGluZ1R5cGUgcGFy
c2VFbmNvZGluZ1R5cGUoY29uc3QgU3RyaW5nJiB0eXBlKQogICAgIHsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS94bWwv
WE1MSHR0cFJlcXVlc3QuY3BwCmluZGV4IDgwZGRkM2RlM2VkYzQyNGUzNzBlNTY5OWE4MTNkNmU5
ZWU0ZmJlMDMuLmNhMWU5YmIyNmFlMzUxNTM4YjAzMTdhZTllY2NhZWNiNmY5MmVjMjAgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3htbC9YTUxIdHRwUmVxdWVzdC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUveG1sL1hNTEh0dHBSZXF1ZXN0LmNwcApAQCAtNTQ2LDYgKzU0Niw4IEBAIEV4Y2Vw
dGlvbk9yPHZvaWQ+IFhNTEh0dHBSZXF1ZXN0OjpzZW5kKERPTUZvcm1EYXRhJiBib2R5KQogICAg
ICAgICBtX3JlcXVlc3RFbnRpdHlCb2R5ID0gRm9ybURhdGE6OmNyZWF0ZU11bHRpUGFydChib2R5
KTsKICAgICAgICAgaWYgKCFtX3JlcXVlc3RIZWFkZXJzLmNvbnRhaW5zKEhUVFBIZWFkZXJOYW1l
OjpDb250ZW50VHlwZSkpCiAgICAgICAgICAgICBtX3JlcXVlc3RIZWFkZXJzLnNldChIVFRQSGVh
ZGVyTmFtZTo6Q29udGVudFR5cGUsIG1ha2VTdHJpbmcoIm11bHRpcGFydC9mb3JtLWRhdGE7IGJv
dW5kYXJ5PSIsIG1fcmVxdWVzdEVudGl0eUJvZHktPmJvdW5kYXJ5KCkuZGF0YSgpKSk7CisgICAg
ICAgIGlmIChhdXRvIHBhZ2UgPSBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmlzRG9jdW1lbnQo
KSA/IGRvY3VtZW50KCktPnBhZ2UoKSA6IG51bGxwdHIpCisgICAgICAgICAgICBwYWdlLT5sb2dT
dWJtaXR0ZWRJbWFnZU9yTWVkaWFGaWxlcyhtX3JlcXVlc3RFbnRpdHlCb2R5LT5pbWFnZU9yTWVk
aWFGaWxlc0NvdW50KCkpOwogICAgIH0KIAogICAgIHJldHVybiBjcmVhdGVSZXF1ZXN0KCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428703</attachid>
            <date>2021-05-14 20:21:07 -0700</date>
            <delta_ts>2021-05-18 11:48:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225636-20210514202106.patch</filename>
            <type>text/plain</type>
            <size>8652</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWZmYTJmNDc3MjViYjNl
MzBiNzlhOTkzYTE0ZTMxNDhhMzg4ODc4ZC4uNzk5NTMxNDA3MGZmNzY2Yjk5OTBlZGE5MTRmY2Rk
NWQyMjM0OWQyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDIxLTA1LTE0ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhaWRAYXBwbGUuY29tPgorCisgICAgICAgIEFsbG93IGxvZ2dpbmcg
bWluaW1hbCBpbmZvIGFib3V0IHVwbG9hZGluZyBtZWRpYSBmaWxlcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI1NjM2CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS83NjYzOTEzOD4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBGaWxlcyBjYW4gYmUgdXBsb2FkZWQgdG8gYSBzZXJ2ZXIgYnkgbWFueSBkaWZm
ZXJlbnQgd2F5czogdGhyb3VnaCBhIGZvcm0KKyAgICAgICAgc3VibWl0LCBhbiB4aHIsIGEgZmls
ZSBmZXRjaCBvciB0aHJvdWdoIGEgd29ya2VyLiByMjc1MTAzIGhhbmRsZWQgdGhlCisgICAgICAg
IGZvcm0gc3VibWl0IG9ubHkuIEluc3RlYWQgb2YgaGFuZGxpbmcgdGhpcyBjYXNlIGJ5IGNhc2Us
IHdlIGNhbiBhZGQgdGhlCisgICAgICAgIGxvZ2dpbmcgY29kZSBpbiBhIHNoYXJlZCBwbGFjZSB3
aGVyZSBhbGwgdGhlIGZpbGUgdXBsb2FkaW5nIGdvZXMgdGhyb3VnaC4KKworICAgICAgICAqIGh0
bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVu
dDo6c3VibWl0KToKKyAgICAgICAgRGVsZXRlIHRoZSBjb2RlIHdoaWNoIHdhcyBwYXJ0IG9mIHIy
NzUxMDMuCisKKyAgICAgICAgKiBwYWdlL1BhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFn
ZTo6bG9nTWVkaWFEaWFnbm9zdGljTWVzc2FnZSBjb25zdCk6CisgICAgICAgICogcGFnZS9QYWdl
Lmg6CisgICAgICAgIE1ha2UgdGhlIFBhZ2UgYmUgcmVzcG9uc2libGUgZm9yIGxvZ2dpbmcgdGhl
IG1lZGlhIGZpbGVzIGluZm8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRh
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZvcm1EYXRhOjppbWFnZU9yTWVkaWFGaWxlc0NvdW50
IGNvbnN0KToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmg6CisgICAgICAg
IE1ha2UgdGhlIEZvcm1EYXRhIGNvdW50IGhvdyBtYW55IGltYWdlcyBvciBtZWRpYSBmaWxlcyBp
dCBoYXMuCisKIDIwMjEtMDUtMTQgIEFsYW4gQnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAg
ICAgICAgIFtzaG93UmVuZGVyVHJlZV0gRG8gbm90IGludGVncmFsIGZsb29yIHRoZSBvdmVyZmxv
dyB2YWx1ZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKaW5kZXggNjE1OTQ5NGUxNjY1NDNjMTgxMTA0MWRmZGI0Y2JlZmY0YTQ4
MTc3Zi4uM2Q4ZjRkYzBkYTE4Yjc1OGY4YWQxMzI4OGMyYjIzYmY2YTE5MGNhZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNSBAQAorMjAyMS0wNS0xNCAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWlkQGFw
cGxlLmNvbT4KKworICAgICAgICBBbGxvdyBsb2dnaW5nIG1pbmltYWwgaW5mbyBhYm91dCB1cGxv
YWRpbmcgbWVkaWEgZmlsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyNTYzNgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNzY2MzkxMzg+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwOgorICAgICAgICAoV2ViS2l0OjphZGRQYXJh
bWV0ZXJzU2hhcmVkKToKKyAgICAgICAgQ2VudHJhbGl6ZSBsb2dnaW5nIHVwbG9hZGluZyB0aGUg
aW1hZ2VzIGFuZCBtZWRpYSBmaWxlcy4KKwogMjAyMS0wNS0xNCAgQ2hyaXMgRHVtZXogIDxjZHVt
ZXpAYXBwbGUuY29tPgogCiAgICAgICAgIERyb3AgImdldCIgcHJlZml4IGZyb20gV1RGOjpGaWxl
U3lzdGVtJ3MgZ2V0RmlsZU1vZGlmaWNhdGlvblRpbWUoKSAvIGdldEZpbGVDcmVhdGlvblRpbWUo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuY3BwCmluZGV4IGI4OGQ0NDVjM2U0
NmZlNTBhOTk0M2U3YjQ0YjMzNjNlNzY4MWJiMjkuLjg4NWVlZWY1YzFhMTJmNmQzMzZiNzY2NDZi
MzI0YzQ3NjJkZDlkYTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1F
bGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAK
QEAgLTQ2LDcgKzQ2LDYgQEAKICNpbmNsdWRlICJIVE1MUGFyc2VySWRpb21zLmgiCiAjaW5jbHVk
ZSAiSFRNTFRhYmxlRWxlbWVudC5oIgogI2luY2x1ZGUgIklucHV0VHlwZU5hbWVzLmgiCi0jaW5j
bHVkZSAiTUlNRVR5cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIk1peGVkQ29udGVudENoZWNrZXIu
aCIKICNpbmNsdWRlICJOb2RlUmFyZURhdGEuaCIKICNpbmNsdWRlICJQYWdlLmgiCkBAIC0zOTks
MjkgKzM5OCwxMiBAQCB2b2lkIEhUTUxGb3JtRWxlbWVudDo6c3VibWl0KEV2ZW50KiBldmVudCwg
Ym9vbCBhY3RpdmF0ZVN1Ym1pdEJ1dHRvbiwgYm9vbCBwcm9jZQogICAgIGlmIChtX3BsYW5uZWRG
b3JtU3VibWlzc2lvbikKICAgICAgICAgbV9wbGFubmVkRm9ybVN1Ym1pc3Npb24tPmNhbmNlbCgp
OwogCi0gICAgdW5zaWduZWQgaW1hZ2VPck1lZGlhRmlsZXMgPSAwOwotICAgIGZvciAoYXV0byYg
ZGF0YUVsZW1lbnQgOiBmb3JtU3VibWlzc2lvbi0+ZGF0YSgpLmVsZW1lbnRzKCkpIHsKLSAgICAg
ICAgYXV0byogZW5jb2RlZEZpbGVEYXRhID0gV1RGOjpnZXRfaWY8Rm9ybURhdGFFbGVtZW50OjpF
bmNvZGVkRmlsZURhdGE+KGRhdGFFbGVtZW50LmRhdGEpOwotICAgICAgICBpZiAoIWVuY29kZWRG
aWxlRGF0YSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIGF1dG8gbWltZVR5cGUg
PSBNSU1FVHlwZVJlZ2lzdHJ5OjptaW1lVHlwZUZvclBhdGgoZW5jb2RlZEZpbGVEYXRhLT5maWxl
bmFtZSk7Ci0gICAgICAgIGlmIChNSU1FVHlwZVJlZ2lzdHJ5Ojppc1N1cHBvcnRlZEltYWdlTUlN
RVR5cGUobWltZVR5cGUpIHx8IE1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkTWVkaWFNSU1F
VHlwZShtaW1lVHlwZSkpCi0gICAgICAgICAgICArK2ltYWdlT3JNZWRpYUZpbGVzOwotICAgIH0K
LQogICAgIG1fcGxhbm5lZEZvcm1TdWJtaXNzaW9uID0gbWFrZVdlYWtQdHIoZm9ybVN1Ym1pc3Np
b24uZ2V0KCkpOwogICAgIGZyYW1lLT5sb2FkZXIoKS5zdWJtaXRGb3JtKFdURk1vdmUoZm9ybVN1
Ym1pc3Npb24pKTsKIAogICAgIGlmIChmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24pCiAgICAg
ICAgIGZpcnN0U3VjY2Vzc2Z1bFN1Ym1pdEJ1dHRvbi0+c2V0QWN0aXZhdGVkU3VibWl0KGZhbHNl
KTsKIAotICAgIGlmIChpbWFnZU9yTWVkaWFGaWxlcykgewotICAgICAgICBhdXRvJiBkaWFnbm9z
dGljTG9nZ2luZ0NsaWVudCA9IGRvY3VtZW50KCkucGFnZSgpLT5kaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCgpOwotICAgICAgICBhdXRvIG1lc3NhZ2UgPSBtYWtlU3RyaW5nKGltYWdlT3JNZWRpYUZp
bGVzLCBpbWFnZU9yTWVkaWFGaWxlcyA9PSAxID8gIiBtZWRpYSBmaWxlIGhhcyBiZWVuIHN1Ym1p
dHRlZCIgOiAiIG1lZGlhIGZpbGVzIGhhdmUgYmVlbiBzdWJtaXR0ZWQiKTsKLSAgICAgICAgZGlh
Z25vc3RpY0xvZ2dpbmdDbGllbnQubG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoRG9tYWluKG1lc3Nh
Z2UsIERpYWdub3N0aWNMb2dnaW5nRG9tYWluOjpNZWRpYSk7Ci0gICAgfQotCiAgICAgbV9zaG91
bGRTdWJtaXQgPSBmYWxzZTsKICAgICBtX2lzU3VibWl0dGluZ09yUHJlcGFyaW5nRm9yU3VibWlz
c2lvbiA9IGZhbHNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKaW5kZXggZTY0ZjcyMWMxODBlNTg0NTI3
NDljNTZlMGU2OTZjZGY1ZGRiODQ3Mi4uODQ5ZDk5NDJiYjdiNDc5M2IzZTlkZjkzY2QxZmE1ZWFm
OTBlNzIzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCkBAIC0xMDUzLDYgKzEwNTMsMTUgQEAgRGlhZ25v
c3RpY0xvZ2dpbmdDbGllbnQmIFBhZ2U6OmRpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkgY29uc3QK
ICAgICByZXR1cm4gKm1fZGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ7CiB9CiAKK3ZvaWQgUGFnZTo6
bG9nTWVkaWFEaWFnbm9zdGljTWVzc2FnZShjb25zdCBGb3JtRGF0YSogZm9ybURhdGEpIGNvbnN0
Cit7CisgICAgdW5zaWduZWQgaW1hZ2VPck1lZGlhRmlsZXNDb3VudCA9IGZvcm1EYXRhID8gZm9y
bURhdGEtPmltYWdlT3JNZWRpYUZpbGVzQ291bnQoKSA6IDA7CisgICAgaWYgKCFpbWFnZU9yTWVk
aWFGaWxlc0NvdW50KQorICAgICAgICByZXR1cm47CisgICAgYXV0byBtZXNzYWdlID0gbWFrZVN0
cmluZyhpbWFnZU9yTWVkaWFGaWxlc0NvdW50LCBpbWFnZU9yTWVkaWFGaWxlc0NvdW50ID09IDEg
PyAiIG1lZGlhIGZpbGUgaGFzIGJlZW4gc3VibWl0dGVkIiA6ICIgbWVkaWEgZmlsZXMgaGF2ZSBi
ZWVuIHN1Ym1pdHRlZCIpOworICAgIGRpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkubG9nRGlhZ25v
c3RpY01lc3NhZ2VXaXRoRG9tYWluKG1lc3NhZ2UsIERpYWdub3N0aWNMb2dnaW5nRG9tYWluOjpN
ZWRpYSk7Cit9CisKIHZvaWQgUGFnZTo6c2V0TWVkaWFWb2x1bWUoZmxvYXQgdm9sdW1lKQogewog
ICAgIGlmICghKHZvbHVtZSA+PSAwICYmIHZvbHVtZSA8PSAxKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvUGFnZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKaW5kZXgg
MjBkNmQ5NmQ3NzRlMjE3MTNmNDM2MWMxNmVhOGFjZDM0MmFlZWMyYi4uYTc0ODliMzhhNDljYmZl
NTM2ZmYxODFkZWY3YmZkYzY4YTg4YjNhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9QYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKQEAgLTEwNSw2ICsxMDUs
NyBAQCBjbGFzcyBEcmFnQ29udHJvbGxlcjsKIGNsYXNzIEVkaXRvckNsaWVudDsKIGNsYXNzIEVs
ZW1lbnQ7CiBjbGFzcyBGb2N1c0NvbnRyb2xsZXI7CitjbGFzcyBGb3JtRGF0YTsKIGNsYXNzIEZy
YW1lOwogY2xhc3MgSFRNTE1lZGlhRWxlbWVudDsKIGNsYXNzIEhpc3RvcnlJdGVtOwpAQCAtNDk1
LDYgKzQ5Niw4IEBAIHB1YmxpYzoKIAogICAgIFdFQkNPUkVfRVhQT1JUIERpYWdub3N0aWNMb2dn
aW5nQ2xpZW50JiBkaWFnbm9zdGljTG9nZ2luZ0NsaWVudCgpIGNvbnN0OwogCisgICAgV0VCQ09S
RV9FWFBPUlQgdm9pZCBsb2dNZWRpYURpYWdub3N0aWNNZXNzYWdlKGNvbnN0IEZvcm1EYXRhKikg
Y29uc3Q7CisKICAgICBQZXJmb3JtYW5jZUxvZ2dpbmdDbGllbnQqIHBlcmZvcm1hbmNlTG9nZ2lu
Z0NsaWVudCgpIGNvbnN0IHsgcmV0dXJuIG1fcGVyZm9ybWFuY2VMb2dnaW5nQ2xpZW50LmdldCgp
OyB9CiAKICAgICBXaGVlbEV2ZW50RGVsdGFGaWx0ZXIqIHdoZWVsRXZlbnREZWx0YUZpbHRlcigp
IHsgcmV0dXJuIG1fcmVjZW50V2hlZWxFdmVudERlbHRhRmlsdGVyLmdldCgpOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuY3BwCmluZGV4IGFkOGMzNWI3MTg1
NjZlOWYxMmJhZTk4ODNjZDgyOWExYjY1NDhkZTYuLmEwOWMzY2Y5N2Q4N2I3ZmZkOTc3ODk5MTkz
NmM4YTM4YTQ4Y2MyZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdv
cmsvRm9ybURhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9y
bURhdGEuY3BwCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAiRE9NRm9ybURhdGEuaCIKICNp
bmNsdWRlICJGaWxlLmgiCiAjaW5jbHVkZSAiRm9ybURhdGFCdWlsZGVyLmgiCisjaW5jbHVkZSAi
TUlNRVR5cGVSZWdpc3RyeS5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNsdWRlICJTaGFyZWRC
dWZmZXIuaCIKICNpbmNsdWRlICJUZXh0RW5jb2RpbmcuaCIKQEAgLTEyMyw2ICsxMjQsMjEgQEAg
UmVmPEZvcm1EYXRhPiBGb3JtRGF0YTo6aXNvbGF0ZWRDb3B5KCkgY29uc3QKICAgICByZXR1cm4g
Zm9ybURhdGE7CiB9CiAKK3Vuc2lnbmVkIEZvcm1EYXRhOjppbWFnZU9yTWVkaWFGaWxlc0NvdW50
KCkgY29uc3QKK3sKKyAgICB1bnNpZ25lZCBpbWFnZU9yTWVkaWFGaWxlc0NvdW50ID0gMDsKKyAg
ICBmb3IgKGF1dG8mIGVsZW1lbnQgOiBtX2VsZW1lbnRzKSB7CisgICAgICAgIGF1dG8qIGVuY29k
ZWRGaWxlRGF0YSA9IFdURjo6Z2V0X2lmPEZvcm1EYXRhRWxlbWVudDo6RW5jb2RlZEZpbGVEYXRh
PihlbGVtZW50LmRhdGEpOworICAgICAgICBpZiAoIWVuY29kZWRGaWxlRGF0YSkKKyAgICAgICAg
ICAgIGNvbnRpbnVlOworCisgICAgICAgIGF1dG8gbWltZVR5cGUgPSBNSU1FVHlwZVJlZ2lzdHJ5
OjptaW1lVHlwZUZvclBhdGgoZW5jb2RlZEZpbGVEYXRhLT5maWxlbmFtZSk7CisgICAgICAgIGlm
IChNSU1FVHlwZVJlZ2lzdHJ5Ojppc1N1cHBvcnRlZEltYWdlTUlNRVR5cGUobWltZVR5cGUpIHx8
IE1JTUVUeXBlUmVnaXN0cnk6OmlzU3VwcG9ydGVkTWVkaWFNSU1FVHlwZShtaW1lVHlwZSkpCisg
ICAgICAgICAgICArK2ltYWdlT3JNZWRpYUZpbGVzQ291bnQ7CisgICAgfQorICAgIHJldHVybiBp
bWFnZU9yTWVkaWFGaWxlc0NvdW50OworfQorCiB1aW50NjRfdCBGb3JtRGF0YUVsZW1lbnQ6Omxl
bmd0aEluQnl0ZXMoY29uc3QgRnVuY3Rpb248dWludDY0X3QoY29uc3QgVVJMJik+JiBibG9iU2l6
ZSkgY29uc3QKIHsKICAgICByZXR1cm4gc3dpdGNoT24oZGF0YSwKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaAppbmRleCBhOWY0M2MxMjlhNTdlYTNjODQwODQ1Njkz
NDU2NWNmN2VlNGQ0Y2U2Li41NTM5YWYyZWI2ZDBmNWFjNzgwYzhiYjdjOWIxMjMzZjdjY2M5YzEx
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oCkBAIC0yNDEs
NiArMjQxLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBjb250YWluc1Bhc3N3b3JkRGF0YSgpIGNv
bnN0IHsgcmV0dXJuIG1fY29udGFpbnNQYXNzd29yZERhdGE7IH0KICAgICB2b2lkIHNldENvbnRh
aW5zUGFzc3dvcmREYXRhKGJvb2wgY29udGFpbnNQYXNzd29yZERhdGEpIHsgbV9jb250YWluc1Bh
c3N3b3JkRGF0YSA9IGNvbnRhaW5zUGFzc3dvcmREYXRhOyB9CisgICAgdW5zaWduZWQgaW1hZ2VP
ck1lZGlhRmlsZXNDb3VudCgpIGNvbnN0OwogCiAgICAgc3RhdGljIEVuY29kaW5nVHlwZSBwYXJz
ZUVuY29kaW5nVHlwZShjb25zdCBTdHJpbmcmIHR5cGUpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwIGIvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvV2ViTG9hZGVyU3RyYXRlZ3kuY3BwCmluZGV4
IGJhYzc5MGIxMWY2N2U0ZmNiMjBkMDAxYjQ2ZDFjYTQ5ZjNkYjNjN2EuLjAzMzRlMTc3NGM5ODBi
MWJiZTYwMmMwOTRjOTlhMzQ2ZGNlMDhiMWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL1dlYkxvYWRlclN0cmF0ZWd5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
L1dlYlByb2Nlc3MvTmV0d29yay9XZWJMb2FkZXJTdHJhdGVneS5jcHAKQEAgLTI4Myw2ICsyODMs
NyBAQCBzdGF0aWMgdm9pZCBhZGRQYXJhbWV0ZXJzU2hhcmVkKGNvbnN0IEZyYW1lKiBmcmFtZSwg
TmV0d29ya1Jlc291cmNlTG9hZFBhcmFtZXRlcgogICAgIGlmIChhdXRvKiBwYWdlID0gZnJhbWUt
PnBhZ2UoKSkgewogICAgICAgICBwYXJhbWV0ZXJzLnBhZ2VIYXNSZXNvdXJjZUxvYWRDbGllbnQg
PSBwYWdlLT5oYXNSZXNvdXJjZUxvYWRDbGllbnQoKTsKICAgICAgICAgcGFyYW1ldGVycy5zaG91
bGRSZWxheFRoaXJkUGFydHlDb29raWVCbG9ja2luZyA9IHBhZ2UtPnNob3VsZFJlbGF4VGhpcmRQ
YXJ0eUNvb2tpZUJsb2NraW5nKCk7CisgICAgICAgIHBhZ2UtPmxvZ01lZGlhRGlhZ25vc3RpY01l
c3NhZ2UocGFyYW1ldGVycy5yZXF1ZXN0Lmh0dHBCb2R5KCkpOwogICAgIH0KIAogICAgIGlmIChh
dXRvKiBvd25lckVsZW1lbnQgPSBmcmFtZS0+b3duZXJFbGVtZW50KCkpIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>