<?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>227872</bug_id>
          
          <creation_ts>2021-07-12 05:30:47 -0700</creation_ts>
          <short_desc>Do not handle open attribute removal the same as HTMLDialogElement::close()</short_desc>
          <delta_ts>2021-07-15 09:16:52 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>DOM</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>227986</dependson>
          <blocked>84635</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Nguyen (:ntim)">ntim</reporter>
          <assigned_to name="Tim Nguyen (:ntim)">ntim</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1776296</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-12 05:30:47 -0700</bug_when>
    <thetext>Right now, removing the open attribute manually is handled the same as calling HTMLDialogElement::close().

However, the spec: https://html.spec.whatwg.org/multipage/interactive-elements.html#the-dialog-element:event-close explicitly says this is wrong.

Only the close() method should switch the state to closed, unblock the document from the active modal dialog and fire the close event.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776297</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-07-12 05:31:43 -0700</bug_when>
    <thetext>&lt;rdar://problem/80459445&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776653</commentid>
    <comment_count>2</comment_count>
      <attachid>433412</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-13 09:44:50 -0700</bug_when>
    <thetext>Created attachment 433412
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776665</commentid>
    <comment_count>3</comment_count>
      <attachid>433412</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-07-13 10:25:54 -0700</bug_when>
    <thetext>Comment on attachment 433412
Patch

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        &lt;dialog&gt; element: do not perform close() method steps when removing open attribute.

Missing tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776669</commentid>
    <comment_count>4</comment_count>
      <attachid>433412</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-07-13 10:40:02 -0700</bug_when>
    <thetext>Comment on attachment 433412
Patch

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

r- due to lack of testing.

&gt; Source/WebCore/html/HTMLDialogElement.cpp:64
&gt; +    // TODO(webkit.org/b/227537): Add steps 3 &amp; 4

No TODO comments in WebKit

&gt; Source/WebCore/html/HTMLDialogElement.cpp:81
&gt; +    // FIXME(webkit.org/b/227907)

Bad format, please see https://webkit.org/code-style-guidelines/#comments.

&gt; Source/WebCore/html/HTMLDialogElement.cpp:84
&gt; +    // TODO(webkit.org/b/227537): Add steps 8 &amp; 9

No TODO comments in WebKit: https://webkit.org/code-style-guidelines/#comments

&gt; Source/WebCore/html/HTMLDialogElement.cpp:89
&gt; +void HTMLDialogElement::close(const String&amp; result)

Please explain in the change log the changes to this function as they seem non-trivial.

&gt; Source/WebCore/html/HTMLDialogElement.cpp:101
&gt; +    // FIXME(webkit.org/b/227907)

This is not how we write FIXME comments: https://webkit.org/code-style-guidelines/#comments. Please write a proper sentence ending with a period.

&gt; Source/WebCore/html/HTMLDialogElement.cpp:104
&gt; +    // TODO(webkit.org/b/227537): Add step 6

No TODO comments in WebKit: https://webkit.org/code-style-guidelines/#comments.

&gt; Source/WebCore/html/HTMLDialogElement.h:43
&gt; +    const String&amp; returnValue() { return m_returnValue; }

should be marked const.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776696</commentid>
    <comment_count>5</comment_count>
      <attachid>433432</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-13 11:34:24 -0700</bug_when>
    <thetext>Created attachment 433432
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776698</commentid>
    <comment_count>6</comment_count>
      <attachid>433433</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-13 11:35:14 -0700</bug_when>
    <thetext>Created attachment 433433
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776704</commentid>
    <comment_count>7</comment_count>
      <attachid>433438</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-13 11:56:09 -0700</bug_when>
    <thetext>Created attachment 433438
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1776707</commentid>
    <comment_count>8</comment_count>
      <attachid>433439</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-13 12:04:42 -0700</bug_when>
    <thetext>Created attachment 433439
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1777187</commentid>
    <comment_count>9</comment_count>
      <attachid>433580</attachid>
    <who name="Tim Nguyen (:ntim)">ntim</who>
    <bug_when>2021-07-15 06:16:45 -0700</bug_when>
    <thetext>Created attachment 433580
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1777217</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-07-15 09:16:50 -0700</bug_when>
    <thetext>Committed r279950 (239693@main): &lt;https://commits.webkit.org/239693@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 433580.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433412</attachid>
            <date>2021-07-13 09:44:50 -0700</date>
            <delta_ts>2021-07-13 11:34:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227872-20210713184448.patch</filename>
            <type>text/plain</type>
            <size>5652</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5ODY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDhiNTVlOGY1Y2YzOTVh
ZDZjODQyYzU1YTQwMjViMzBiM2MwYTAyNy4uNjBjMzFlMDFjOThiMzcwM2VmMjExYTBiYTVhOGU0
MDQzZjhmNmE4OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA3LTEzICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgPGRpYWxvZz4gZWxlbWVudDogZG8g
bm90IHBlcmZvcm0gY2xvc2UoKSBtZXRob2Qgc3RlcHMgd2hlbiByZW1vdmluZyBvcGVuIGF0dHJp
YnV0ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
Nzg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFs
c28gYWRkZWQgVE9ETy9GSVhNRSBjb21tZW50cyBmb3Igb3RoZXIgaW1wcmVjaXNpb25zIHdydC4g
c3BlYy4KKworICAgICAgICAqIGh0bWwvSFRNTERpYWxvZ0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTERpYWxvZ0VsZW1lbnQ6OnNob3cpOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TERpYWxvZ0VsZW1lbnQ6OnNob3dNb2RhbCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlhbG9n
RWxlbWVudDo6Y2xvc2UpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0VsZW1lbnQ6OmRp
c3BhdGNoUGVuZGluZ0V2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEaWFsb2dFbGVtZW50
Ojppc09wZW4gY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0Vs
ZW1lbnQ6OnJldHVyblZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEaWFs
b2dFbGVtZW50OjpzZXRSZXR1cm5WYWx1ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpI
VE1MRGlhbG9nRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTERpYWxvZ0VsZW1lbnQ6OmlzTW9kYWwgY29uc3QpOiBEZWxldGVkLgorICAgICAg
ICAqIGh0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaDoKKwogMjAyMS0wNy0xMyAgTWFydGluIFJvYmlu
c29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgUmVuZGVyTGF5ZXJTY3JvbGxh
YmxlQXJlYTo6dXBkYXRlU2Nyb2xsUG9zaXRpb24gYXNzdW1lcyB0aGF0IGl0IGNhbiBzY3JvbGwg
dG8gdGhlIHRhcmdldGVkIHNjcm9sbCBwb3NpdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxE
aWFsb2dFbGVtZW50LmNwcAppbmRleCA2NjE1YThhODdiOTk3MmVmOWM2ZGRiYjg5MzNlOGY5OTEx
MjlmM2FiLi43ZDAxYjM3NmUzNWE3MjgxOTIyMjlhNjM3NmFlODY4NDNlNmNmYTE3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcApAQCAtNTMsMjggKzUzLDE1IEBA
IEhUTUxEaWFsb2dFbGVtZW50Ojp+SFRNTERpYWxvZ0VsZW1lbnQoKQogICAgIGRpYWxvZ0Nsb3Nl
RXZlbnRTZW5kZXIoKS5jYW5jZWxFdmVudCgqdGhpcyk7CiB9CiAKLWJvb2wgSFRNTERpYWxvZ0Vs
ZW1lbnQ6OmlzT3BlbigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1faXNPcGVuOwotfQotCi1jb25z
dCBTdHJpbmcmIEhUTUxEaWFsb2dFbGVtZW50OjpyZXR1cm5WYWx1ZSgpCi17Ci0gICAgcmV0dXJu
IG1fcmV0dXJuVmFsdWU7Ci19Ci0KLXZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OnNldFJldHVyblZh
bHVlKFN0cmluZyYmIHJldHVyblZhbHVlKQotewotICAgIG1fcmV0dXJuVmFsdWUgPSBXVEZNb3Zl
KHJldHVyblZhbHVlKTsKLX0KLQogdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6c2hvdygpCiB7CiAg
ICAgLy8gSWYgdGhlIGVsZW1lbnQgYWxyZWFkeSBoYXMgYW4gb3BlbiBhdHRyaWJ1dGUsIHRoZW4g
cmV0dXJuLgogICAgIGlmIChpc09wZW4oKSkKICAgICAgICAgcmV0dXJuOwotICAgIAorCiAgICAg
c2V0Qm9vbGVhbkF0dHJpYnV0ZShvcGVuQXR0ciwgdHJ1ZSk7CisKKyAgICAvLyBUT0RPKHdlYmtp
dC5vcmcvYi8yMjc1MzcpOiBBZGQgc3RlcHMgMyAmIDQKIH0KIAogRXhjZXB0aW9uT3I8dm9pZD4g
SFRNTERpYWxvZ0VsZW1lbnQ6OnNob3dNb2RhbCgpCkBAIC04OSwyMSArNzYsMzUgQEAgRXhjZXB0
aW9uT3I8dm9pZD4gSFRNTERpYWxvZ0VsZW1lbnQ6OnNob3dNb2RhbCgpCiAKICAgICBzZXRCb29s
ZWFuQXR0cmlidXRlKG9wZW5BdHRyLCB0cnVlKTsKIAotICAgIGRvY3VtZW50KCkuYWRkVG9Ub3BM
YXllcigqdGhpcyk7CiAgICAgbV9pc01vZGFsID0gdHJ1ZTsKIAorICAgIC8vIEZJWE1FKHdlYmtp
dC5vcmcvYi8yMjc5MDcpCisgICAgZG9jdW1lbnQoKS5hZGRUb1RvcExheWVyKCp0aGlzKTsKKwor
ICAgIC8vIFRPRE8od2Via2l0Lm9yZy9iLzIyNzUzNyk6IEFkZCBzdGVwcyA4ICYgOQorCiAgICAg
cmV0dXJuIHsgfTsKIH0KIAotdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6Y2xvc2UoY29uc3QgU3Ry
aW5nJiByZXR1cm5WYWx1ZSkKK3ZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OmNsb3NlKGNvbnN0IFN0
cmluZyYgcmVzdWx0KQogewogICAgIGlmICghaXNPcGVuKCkpCiAgICAgICAgIHJldHVybjsKLSAg
ICAKKwogICAgIHNldEJvb2xlYW5BdHRyaWJ1dGUob3BlbkF0dHIsIGZhbHNlKTsKIAotICAgIGlm
ICghcmV0dXJuVmFsdWUuaXNOdWxsKCkpCi0gICAgICAgIG1fcmV0dXJuVmFsdWUgPSByZXR1cm5W
YWx1ZTsKKyAgICBtX2lzTW9kYWwgPSBmYWxzZTsKKworICAgIGlmICghcmVzdWx0LmlzTnVsbCgp
KQorICAgICAgICBtX3JldHVyblZhbHVlID0gcmVzdWx0OworCisgICAgLy8gRklYTUUod2Via2l0
Lm9yZy9iLzIyNzkwNykKKyAgICBkb2N1bWVudCgpLnJlbW92ZUZyb21Ub3BMYXllcigqdGhpcyk7
CisKKyAgICAvLyBUT0RPKHdlYmtpdC5vcmcvYi8yMjc1MzcpOiBBZGQgc3RlcCA2CisKKyAgICBk
aWFsb2dDbG9zZUV2ZW50U2VuZGVyKCkuY2FuY2VsRXZlbnQoKnRoaXMpOworICAgIGRpYWxvZ0Ns
b3NlRXZlbnRTZW5kZXIoKS5kaXNwYXRjaEV2ZW50U29vbigqdGhpcyk7CiB9CiAKIHZvaWQgSFRN
TERpYWxvZ0VsZW1lbnQ6OmRpc3BhdGNoUGVuZGluZ0V2ZW50KERpYWxvZ0V2ZW50U2VuZGVyKiBl
dmVudFNlbmRlcikKQEAgLTExMSwzMiArMTEyLDQgQEAgdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6
ZGlzcGF0Y2hQZW5kaW5nRXZlbnQoRGlhbG9nRXZlbnRTZW5kZXIqIGV2ZW50U2VuZGVyKQogICAg
IEFTU0VSVF9VTlVTRUQoZXZlbnRTZW5kZXIsIGV2ZW50U2VuZGVyID09ICZkaWFsb2dDbG9zZUV2
ZW50U2VuZGVyKCkpOwogICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVz
KCkuY2xvc2VFdmVudCwgRXZlbnQ6OkNhbkJ1YmJsZTo6Tm8sIEV2ZW50OjpJc0NhbmNlbGFibGU6
Ok5vKSk7CiB9Ci0KLXZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OnBhcnNlQXR0cmlidXRlKGNvbnN0
IFF1YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21TdHJpbmcmIHZhbHVlKQotewotICAgIGlm
IChuYW1lID09IG9wZW5BdHRyKSB7Ci0gICAgICAgIGJvb2wgb2xkVmFsdWUgPSBtX2lzT3BlbjsK
LSAgICAgICAgbV9pc09wZW4gPSAhdmFsdWUuaXNOdWxsKCk7Ci0KLSAgICAgICAgLy8gRW1pdCBj
bG9zZSBldmVudAotICAgICAgICBpZiAob2xkVmFsdWUgIT0gbV9pc09wZW4gJiYgIW1faXNPcGVu
KSB7Ci0gICAgICAgICAgICBpZiAobV9pc01vZGFsKSB7Ci0gICAgICAgICAgICAgICAgZG9jdW1l
bnQoKS5yZW1vdmVGcm9tVG9wTGF5ZXIoKnRoaXMpOwotICAgICAgICAgICAgICAgIG1faXNNb2Rh
bCA9IGZhbHNlOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAgICBkaWFsb2dDbG9zZUV2ZW50
U2VuZGVyKCkuY2FuY2VsRXZlbnQoKnRoaXMpOwotICAgICAgICAgICAgZGlhbG9nQ2xvc2VFdmVu
dFNlbmRlcigpLmRpc3BhdGNoRXZlbnRTb29uKCp0aGlzKTsKLSAgICAgICAgfQotICAgICAgICBy
ZXR1cm47Ci0gICAgfQotICAgIAotICAgIEhUTUxFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShuYW1l
LCB2YWx1ZSk7Ci19Ci0KLWJvb2wgSFRNTERpYWxvZ0VsZW1lbnQ6OmlzTW9kYWwoKSBjb25zdAot
ewotICAgIHJldHVybiBtX2lzTW9kYWw7Ci19Ci0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERp
YWxvZ0VsZW1lbnQuaAppbmRleCA2MmIzNTJkMDU2OWI4MmFlYmI3ZmViNDU0MzBlYmI1N2FjODBj
YzVmLi5mNTdmNWEzNzU2NGU4MWU1ZDFlZWIwMjBkMWZiZWZhOTY2NmNmOTVhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oCkBAIC0zNywxMSArMzcsMTEgQEAgY2xhc3Mg
SFRNTERpYWxvZ0VsZW1lbnQgZmluYWwgOiBwdWJsaWMgSFRNTEVsZW1lbnQgewogcHVibGljOgog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHN0YXRpYyBSZWY8SFRNTERpYWxvZ0VsZW1l
bnQ+IGNyZWF0ZShBcmdzJiYuLi4gYXJncykgeyByZXR1cm4gYWRvcHRSZWYoKm5ldyBIVE1MRGlh
bG9nRWxlbWVudChzdGQ6OmZvcndhcmQ8QXJncz4oYXJncykuLi4pKTsgfQogICAgIH5IVE1MRGlh
bG9nRWxlbWVudCgpOwotICAgIAotICAgIGJvb2wgaXNPcGVuKCkgY29uc3Q7CiAKLSAgICBjb25z
dCBTdHJpbmcmIHJldHVyblZhbHVlKCk7Ci0gICAgdm9pZCBzZXRSZXR1cm5WYWx1ZShTdHJpbmcm
Jik7CisgICAgYm9vbCBpc09wZW4oKSBjb25zdCB7IHJldHVybiBoYXNBdHRyaWJ1dGUoSFRNTE5h
bWVzOjpvcGVuQXR0cik7IH0KKworICAgIGNvbnN0IFN0cmluZyYgcmV0dXJuVmFsdWUoKSB7IHJl
dHVybiBtX3JldHVyblZhbHVlOyB9CisgICAgdm9pZCBzZXRSZXR1cm5WYWx1ZShTdHJpbmcmJiB2
YWx1ZSkgeyBtX3JldHVyblZhbHVlID0gV1RGTW92ZSh2YWx1ZSk7IH0KIAogICAgIHZvaWQgc2hv
dygpOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNob3dNb2RhbCgpOwpAQCAtNDksMTYgKzQ5LDEz
IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlzcGF0Y2hQZW5kaW5nRXZlbnQoRGlhbG9nRXZlbnRT
ZW5kZXIqKTsKIAotICAgIGJvb2wgaXNNb2RhbCgpIGNvbnN0OworICAgIGJvb2wgaXNNb2RhbCgp
IGNvbnN0IHsgcmV0dXJuIG1faXNNb2RhbDsgfTsKIAogcHJpdmF0ZToKICAgICBIVE1MRGlhbG9n
RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmKTsKIAotICAgIHZvaWQgcGFy
c2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21TdHJpbmcmKSBmaW5h
bDsKLQogICAgIFN0cmluZyBtX3JldHVyblZhbHVlOwogICAgIGJvb2wgbV9pc01vZGFsIHsgZmFs
c2UgfTsKLSAgICBib29sIG1faXNPcGVuIHsgZmFsc2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433432</attachid>
            <date>2021-07-13 11:34:24 -0700</date>
            <delta_ts>2021-07-13 11:35:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227872-20210713203423.patch</filename>
            <type>text/plain</type>
            <size>5451</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5ODY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDhiNTVlOGY1Y2YzOTVh
ZDZjODQyYzU1YTQwMjViMzBiM2MwYTAyNy4uZThhMmQwYWQyMGU4OTZhYmY2OGY4N2NiMGQ0MjE1
YWYxNGFlM2Y3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA3LTEzICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgPGRpYWxvZz4gZWxlbWVudDogZG8g
bm90IHBlcmZvcm0gY2xvc2UoKSBtZXRob2Qgc3RlcHMgd2hlbiByZW1vdmluZyBvcGVuIGF0dHJp
YnV0ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
Nzg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRo
ZSBjbG9zZSBmdW5jdGlvbiBub3cgcGVyZmVjdGx5IGZvbGxvd3MgdGhlIHN0ZXBzIGF0OiBodHRw
czovL2h0bWwuc3BlYy53aGF0d2cub3JnL211bHRpcGFnZS9pbnRlcmFjdGl2ZS1lbGVtZW50cy5o
dG1sI2Nsb3NlLXRoZS1kaWFsb2cKKworICAgICAgICAqIGh0bWwvSFRNTERpYWxvZ0VsZW1lbnQu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0VsZW1lbnQ6OnNob3cpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTERpYWxvZ0VsZW1lbnQ6OnNob3dNb2RhbCk6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6Y2xvc2UpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERp
YWxvZ0VsZW1lbnQ6OmRpc3BhdGNoUGVuZGluZ0V2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxEaWFsb2dFbGVtZW50Ojppc09wZW4gY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTERpYWxvZ0VsZW1lbnQ6OnJldHVyblZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxEaWFsb2dFbGVtZW50OjpzZXRSZXR1cm5WYWx1ZSk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0VsZW1lbnQ6OmlzTW9kYWwgY29uc3QpOiBE
ZWxldGVkLgorICAgICAgICAqIGh0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaDoKKwogMjAyMS0wNy0x
MyAgTWFydGluIFJvYmluc29uICA8bXJvYmluc29uQGlnYWxpYS5jb20+CiAKICAgICAgICAgUmVu
ZGVyTGF5ZXJTY3JvbGxhYmxlQXJlYTo6dXBkYXRlU2Nyb2xsUG9zaXRpb24gYXNzdW1lcyB0aGF0
IGl0IGNhbiBzY3JvbGwgdG8gdGhlIHRhcmdldGVkIHNjcm9sbCBwb3NpdGlvbgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcAppbmRleCA2NjE1YThhODdiOTk3MmVmOWM2
ZGRiYjg5MzNlOGY5OTExMjlmM2FiLi5jY2NmYjU3OTdlYzZmZjc0NmFlMzAyMDQ2ODYyOTE0ZTFh
OWRiOTg0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcApAQCAt
NTMsMjcgKzUzLDEyIEBAIEhUTUxEaWFsb2dFbGVtZW50Ojp+SFRNTERpYWxvZ0VsZW1lbnQoKQog
ICAgIGRpYWxvZ0Nsb3NlRXZlbnRTZW5kZXIoKS5jYW5jZWxFdmVudCgqdGhpcyk7CiB9CiAKLWJv
b2wgSFRNTERpYWxvZ0VsZW1lbnQ6OmlzT3BlbigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1faXNP
cGVuOwotfQotCi1jb25zdCBTdHJpbmcmIEhUTUxEaWFsb2dFbGVtZW50OjpyZXR1cm5WYWx1ZSgp
Ci17Ci0gICAgcmV0dXJuIG1fcmV0dXJuVmFsdWU7Ci19Ci0KLXZvaWQgSFRNTERpYWxvZ0VsZW1l
bnQ6OnNldFJldHVyblZhbHVlKFN0cmluZyYmIHJldHVyblZhbHVlKQotewotICAgIG1fcmV0dXJu
VmFsdWUgPSBXVEZNb3ZlKHJldHVyblZhbHVlKTsKLX0KLQogdm9pZCBIVE1MRGlhbG9nRWxlbWVu
dDo6c2hvdygpCiB7CiAgICAgLy8gSWYgdGhlIGVsZW1lbnQgYWxyZWFkeSBoYXMgYW4gb3BlbiBh
dHRyaWJ1dGUsIHRoZW4gcmV0dXJuLgogICAgIGlmIChpc09wZW4oKSkKICAgICAgICAgcmV0dXJu
OwotICAgIAorCiAgICAgc2V0Qm9vbGVhbkF0dHJpYnV0ZShvcGVuQXR0ciwgdHJ1ZSk7CiB9CiAK
QEAgLTg5LDIxICs3NCwzMSBAQCBFeGNlcHRpb25Pcjx2b2lkPiBIVE1MRGlhbG9nRWxlbWVudDo6
c2hvd01vZGFsKCkKIAogICAgIHNldEJvb2xlYW5BdHRyaWJ1dGUob3BlbkF0dHIsIHRydWUpOwog
Ci0gICAgZG9jdW1lbnQoKS5hZGRUb1RvcExheWVyKCp0aGlzKTsKICAgICBtX2lzTW9kYWwgPSB0
cnVlOwogCisgICAgLy8gRklYTUU6IHdlYmtpdC5vcmcvYi8yMjc5MDcKKyAgICBkb2N1bWVudCgp
LmFkZFRvVG9wTGF5ZXIoKnRoaXMpOworCiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBIVE1M
RGlhbG9nRWxlbWVudDo6Y2xvc2UoY29uc3QgU3RyaW5nJiByZXR1cm5WYWx1ZSkKK3ZvaWQgSFRN
TERpYWxvZ0VsZW1lbnQ6OmNsb3NlKGNvbnN0IFN0cmluZyYgcmVzdWx0KQogewogICAgIGlmICgh
aXNPcGVuKCkpCiAgICAgICAgIHJldHVybjsKLSAgICAKKwogICAgIHNldEJvb2xlYW5BdHRyaWJ1
dGUob3BlbkF0dHIsIGZhbHNlKTsKIAotICAgIGlmICghcmV0dXJuVmFsdWUuaXNOdWxsKCkpCi0g
ICAgICAgIG1fcmV0dXJuVmFsdWUgPSByZXR1cm5WYWx1ZTsKKyAgICBtX2lzTW9kYWwgPSBmYWxz
ZTsKKworICAgIGlmICghcmVzdWx0LmlzTnVsbCgpKQorICAgICAgICBtX3JldHVyblZhbHVlID0g
cmVzdWx0OworCisgICAgLy8gRklYTUU6IHdlYmtpdC5vcmcvYi8yMjc5MDcKKyAgICBkb2N1bWVu
dCgpLnJlbW92ZUZyb21Ub3BMYXllcigqdGhpcyk7CisKKyAgICBkaWFsb2dDbG9zZUV2ZW50U2Vu
ZGVyKCkuY2FuY2VsRXZlbnQoKnRoaXMpOworICAgIGRpYWxvZ0Nsb3NlRXZlbnRTZW5kZXIoKS5k
aXNwYXRjaEV2ZW50U29vbigqdGhpcyk7CiB9CiAKIHZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OmRp
c3BhdGNoUGVuZGluZ0V2ZW50KERpYWxvZ0V2ZW50U2VuZGVyKiBldmVudFNlbmRlcikKQEAgLTEx
MiwzMSArMTA3LDQgQEAgdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6ZGlzcGF0Y2hQZW5kaW5nRXZl
bnQoRGlhbG9nRXZlbnRTZW5kZXIqIGV2ZW50U2VuZGVyKQogICAgIGRpc3BhdGNoRXZlbnQoRXZl
bnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuY2xvc2VFdmVudCwgRXZlbnQ6OkNhbkJ1YmJsZTo6Tm8s
IEV2ZW50OjpJc0NhbmNlbGFibGU6Ok5vKSk7CiB9CiAKLXZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6
OnBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21TdHJp
bmcmIHZhbHVlKQotewotICAgIGlmIChuYW1lID09IG9wZW5BdHRyKSB7Ci0gICAgICAgIGJvb2wg
b2xkVmFsdWUgPSBtX2lzT3BlbjsKLSAgICAgICAgbV9pc09wZW4gPSAhdmFsdWUuaXNOdWxsKCk7
Ci0KLSAgICAgICAgLy8gRW1pdCBjbG9zZSBldmVudAotICAgICAgICBpZiAob2xkVmFsdWUgIT0g
bV9pc09wZW4gJiYgIW1faXNPcGVuKSB7Ci0gICAgICAgICAgICBpZiAobV9pc01vZGFsKSB7Ci0g
ICAgICAgICAgICAgICAgZG9jdW1lbnQoKS5yZW1vdmVGcm9tVG9wTGF5ZXIoKnRoaXMpOwotICAg
ICAgICAgICAgICAgIG1faXNNb2RhbCA9IGZhbHNlOwotICAgICAgICAgICAgfQotCi0gICAgICAg
ICAgICBkaWFsb2dDbG9zZUV2ZW50U2VuZGVyKCkuY2FuY2VsRXZlbnQoKnRoaXMpOwotICAgICAg
ICAgICAgZGlhbG9nQ2xvc2VFdmVudFNlbmRlcigpLmRpc3BhdGNoRXZlbnRTb29uKCp0aGlzKTsK
LSAgICAgICAgfQotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIAotICAgIEhUTUxFbGVtZW50
OjpwYXJzZUF0dHJpYnV0ZShuYW1lLCB2YWx1ZSk7Ci19Ci0KLWJvb2wgSFRNTERpYWxvZ0VsZW1l
bnQ6OmlzTW9kYWwoKSBjb25zdAotewotICAgIHJldHVybiBtX2lzTW9kYWw7Ci19Ci0KIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaAppbmRleCA2MmIzNTJkMDU2OWI4MmFl
YmI3ZmViNDU0MzBlYmI1N2FjODBjYzVmLi43ODI5ODEzNDUyZWUzOTk2ZjU3NzRiNmMwNmUyYTEx
ZDJlMzM3ODNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oCkBAIC0z
NywxMSArMzcsMTEgQEAgY2xhc3MgSFRNTERpYWxvZ0VsZW1lbnQgZmluYWwgOiBwdWJsaWMgSFRN
TEVsZW1lbnQgewogcHVibGljOgogICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHN0YXRp
YyBSZWY8SFRNTERpYWxvZ0VsZW1lbnQ+IGNyZWF0ZShBcmdzJiYuLi4gYXJncykgeyByZXR1cm4g
YWRvcHRSZWYoKm5ldyBIVE1MRGlhbG9nRWxlbWVudChzdGQ6OmZvcndhcmQ8QXJncz4oYXJncyku
Li4pKTsgfQogICAgIH5IVE1MRGlhbG9nRWxlbWVudCgpOwotICAgIAotICAgIGJvb2wgaXNPcGVu
KCkgY29uc3Q7CiAKLSAgICBjb25zdCBTdHJpbmcmIHJldHVyblZhbHVlKCk7Ci0gICAgdm9pZCBz
ZXRSZXR1cm5WYWx1ZShTdHJpbmcmJik7CisgICAgYm9vbCBpc09wZW4oKSBjb25zdCB7IHJldHVy
biBoYXNBdHRyaWJ1dGUoSFRNTE5hbWVzOjpvcGVuQXR0cik7IH0KKworICAgIGNvbnN0IFN0cmlu
ZyYgcmV0dXJuVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3JldHVyblZhbHVlOyB9CisgICAgdm9p
ZCBzZXRSZXR1cm5WYWx1ZShTdHJpbmcmJiB2YWx1ZSkgeyBtX3JldHVyblZhbHVlID0gV1RGTW92
ZSh2YWx1ZSk7IH0KIAogICAgIHZvaWQgc2hvdygpOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNo
b3dNb2RhbCgpOwpAQCAtNDksMTYgKzQ5LDEzIEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlzcGF0
Y2hQZW5kaW5nRXZlbnQoRGlhbG9nRXZlbnRTZW5kZXIqKTsKIAotICAgIGJvb2wgaXNNb2RhbCgp
IGNvbnN0OworICAgIGJvb2wgaXNNb2RhbCgpIGNvbnN0IHsgcmV0dXJuIG1faXNNb2RhbDsgfTsK
IAogcHJpdmF0ZToKICAgICBIVE1MRGlhbG9nRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwg
RG9jdW1lbnQmKTsKIAotICAgIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFt
ZSYsIGNvbnN0IEF0b21TdHJpbmcmKSBmaW5hbDsKLQogICAgIFN0cmluZyBtX3JldHVyblZhbHVl
OwogICAgIGJvb2wgbV9pc01vZGFsIHsgZmFsc2UgfTsKLSAgICBib29sIG1faXNPcGVuIHsgZmFs
c2UgfTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433433</attachid>
            <date>2021-07-13 11:35:14 -0700</date>
            <delta_ts>2021-07-13 11:56:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227872-20210713203512.patch</filename>
            <type>text/plain</type>
            <size>5441</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5ODY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDhiNTVlOGY1Y2YzOTVh
ZDZjODQyYzU1YTQwMjViMzBiM2MwYTAyNy4uYThmMDZiNTgwYmMyYmU4ZjJlMjk1NjU5NDNhMjg3
ODk4ODBlNDRhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA3LTEzICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgPGRpYWxvZz4gZWxlbWVudDogZG8g
bm90IHBlcmZvcm0gY2xvc2UoKSBtZXRob2Qgc3RlcHMgd2hlbiByZW1vdmluZyBvcGVuIGF0dHJp
YnV0ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
Nzg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRo
ZSBjbG9zZSBmdW5jdGlvbiBub3cgZm9sbG93cyB0aGUgc3RlcHMgYXQ6IGh0dHBzOi8vaHRtbC5z
cGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2ludGVyYWN0aXZlLWVsZW1lbnRzLmh0bWwjY2xvc2Ut
dGhlLWRpYWxvZworCisgICAgICAgICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6c2hvdyk6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MRGlhbG9nRWxlbWVudDo6c2hvd01vZGFsKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxE
aWFsb2dFbGVtZW50OjpjbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVu
dDo6ZGlzcGF0Y2hQZW5kaW5nRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0Vs
ZW1lbnQ6OmlzT3BlbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlh
bG9nRWxlbWVudDo6cmV0dXJuVmFsdWUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TERpYWxvZ0VsZW1lbnQ6OnNldFJldHVyblZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxEaWFsb2dFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6aXNNb2RhbCBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oOgorCiAyMDIxLTA3LTEzICBNYXJ0aW4g
Um9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBSZW5kZXJMYXllclNj
cm9sbGFibGVBcmVhOjp1cGRhdGVTY3JvbGxQb3NpdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2FuIHNj
cm9sbCB0byB0aGUgdGFyZ2V0ZWQgc2Nyb2xsIHBvc2l0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTERpYWxvZ0VsZW1lbnQuY3BwCmluZGV4IDY2MTVhOGE4N2I5OTcyZWY5YzZkZGJiODkzM2U4
Zjk5MTEyOWYzYWIuLmNjY2ZiNTc5N2VjNmZmNzQ2YWUzMDIwNDY4NjI5MTRlMWE5ZGI5ODQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuY3BwCkBAIC01MywyNyArNTMs
MTIgQEAgSFRNTERpYWxvZ0VsZW1lbnQ6On5IVE1MRGlhbG9nRWxlbWVudCgpCiAgICAgZGlhbG9n
Q2xvc2VFdmVudFNlbmRlcigpLmNhbmNlbEV2ZW50KCp0aGlzKTsKIH0KIAotYm9vbCBIVE1MRGlh
bG9nRWxlbWVudDo6aXNPcGVuKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9pc09wZW47Ci19Ci0K
LWNvbnN0IFN0cmluZyYgSFRNTERpYWxvZ0VsZW1lbnQ6OnJldHVyblZhbHVlKCkKLXsKLSAgICBy
ZXR1cm4gbV9yZXR1cm5WYWx1ZTsKLX0KLQotdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6c2V0UmV0
dXJuVmFsdWUoU3RyaW5nJiYgcmV0dXJuVmFsdWUpCi17Ci0gICAgbV9yZXR1cm5WYWx1ZSA9IFdU
Rk1vdmUocmV0dXJuVmFsdWUpOwotfQotCiB2b2lkIEhUTUxEaWFsb2dFbGVtZW50OjpzaG93KCkK
IHsKICAgICAvLyBJZiB0aGUgZWxlbWVudCBhbHJlYWR5IGhhcyBhbiBvcGVuIGF0dHJpYnV0ZSwg
dGhlbiByZXR1cm4uCiAgICAgaWYgKGlzT3BlbigpKQogICAgICAgICByZXR1cm47Ci0gICAgCisK
ICAgICBzZXRCb29sZWFuQXR0cmlidXRlKG9wZW5BdHRyLCB0cnVlKTsKIH0KIApAQCAtODksMjEg
Kzc0LDMxIEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxEaWFsb2dFbGVtZW50OjpzaG93TW9kYWwo
KQogCiAgICAgc2V0Qm9vbGVhbkF0dHJpYnV0ZShvcGVuQXR0ciwgdHJ1ZSk7CiAKLSAgICBkb2N1
bWVudCgpLmFkZFRvVG9wTGF5ZXIoKnRoaXMpOwogICAgIG1faXNNb2RhbCA9IHRydWU7CiAKKyAg
ICAvLyBGSVhNRTogd2Via2l0Lm9yZy9iLzIyNzkwNworICAgIGRvY3VtZW50KCkuYWRkVG9Ub3BM
YXllcigqdGhpcyk7CisKICAgICByZXR1cm4geyB9OwogfQogCi12b2lkIEhUTUxEaWFsb2dFbGVt
ZW50OjpjbG9zZShjb25zdCBTdHJpbmcmIHJldHVyblZhbHVlKQordm9pZCBIVE1MRGlhbG9nRWxl
bWVudDo6Y2xvc2UoY29uc3QgU3RyaW5nJiByZXN1bHQpCiB7CiAgICAgaWYgKCFpc09wZW4oKSkK
ICAgICAgICAgcmV0dXJuOwotICAgIAorCiAgICAgc2V0Qm9vbGVhbkF0dHJpYnV0ZShvcGVuQXR0
ciwgZmFsc2UpOwogCi0gICAgaWYgKCFyZXR1cm5WYWx1ZS5pc051bGwoKSkKLSAgICAgICAgbV9y
ZXR1cm5WYWx1ZSA9IHJldHVyblZhbHVlOworICAgIG1faXNNb2RhbCA9IGZhbHNlOworCisgICAg
aWYgKCFyZXN1bHQuaXNOdWxsKCkpCisgICAgICAgIG1fcmV0dXJuVmFsdWUgPSByZXN1bHQ7CisK
KyAgICAvLyBGSVhNRTogd2Via2l0Lm9yZy9iLzIyNzkwNworICAgIGRvY3VtZW50KCkucmVtb3Zl
RnJvbVRvcExheWVyKCp0aGlzKTsKKworICAgIGRpYWxvZ0Nsb3NlRXZlbnRTZW5kZXIoKS5jYW5j
ZWxFdmVudCgqdGhpcyk7CisgICAgZGlhbG9nQ2xvc2VFdmVudFNlbmRlcigpLmRpc3BhdGNoRXZl
bnRTb29uKCp0aGlzKTsKIH0KIAogdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6ZGlzcGF0Y2hQZW5k
aW5nRXZlbnQoRGlhbG9nRXZlbnRTZW5kZXIqIGV2ZW50U2VuZGVyKQpAQCAtMTEyLDMxICsxMDcs
NCBAQCB2b2lkIEhUTUxEaWFsb2dFbGVtZW50OjpkaXNwYXRjaFBlbmRpbmdFdmVudChEaWFsb2dF
dmVudFNlbmRlciogZXZlbnRTZW5kZXIpCiAgICAgZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRl
KGV2ZW50TmFtZXMoKS5jbG9zZUV2ZW50LCBFdmVudDo6Q2FuQnViYmxlOjpObywgRXZlbnQ6Oklz
Q2FuY2VsYWJsZTo6Tm8pKTsKIH0KIAotdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6cGFyc2VBdHRy
aWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbVN0cmluZyYgdmFsdWUp
Ci17Ci0gICAgaWYgKG5hbWUgPT0gb3BlbkF0dHIpIHsKLSAgICAgICAgYm9vbCBvbGRWYWx1ZSA9
IG1faXNPcGVuOwotICAgICAgICBtX2lzT3BlbiA9ICF2YWx1ZS5pc051bGwoKTsKLQotICAgICAg
ICAvLyBFbWl0IGNsb3NlIGV2ZW50Ci0gICAgICAgIGlmIChvbGRWYWx1ZSAhPSBtX2lzT3BlbiAm
JiAhbV9pc09wZW4pIHsKLSAgICAgICAgICAgIGlmIChtX2lzTW9kYWwpIHsKLSAgICAgICAgICAg
ICAgICBkb2N1bWVudCgpLnJlbW92ZUZyb21Ub3BMYXllcigqdGhpcyk7Ci0gICAgICAgICAgICAg
ICAgbV9pc01vZGFsID0gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0KLSAgICAgICAgICAgIGRpYWxv
Z0Nsb3NlRXZlbnRTZW5kZXIoKS5jYW5jZWxFdmVudCgqdGhpcyk7Ci0gICAgICAgICAgICBkaWFs
b2dDbG9zZUV2ZW50U2VuZGVyKCkuZGlzcGF0Y2hFdmVudFNvb24oKnRoaXMpOwotICAgICAgICB9
Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgCi0gICAgSFRNTEVsZW1lbnQ6OnBhcnNlQXR0
cmlidXRlKG5hbWUsIHZhbHVlKTsKLX0KLQotYm9vbCBIVE1MRGlhbG9nRWxlbWVudDo6aXNNb2Rh
bCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1faXNNb2RhbDsKLX0KLQogfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oCmluZGV4IDYyYjM1MmQwNTY5YjgyYWViYjdmZWI0NTQz
MGViYjU3YWM4MGNjNWYuLjc4Mjk4MTM0NTJlZTM5OTZmNTc3NGI2YzA2ZTJhMTFkMmUzMzc4M2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmgKQEAgLTM3LDExICszNywx
MSBAQCBjbGFzcyBIVE1MRGlhbG9nRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MRWxlbWVudCB7
CiBwdWJsaWM6CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUuLi4gQXJncz4gc3RhdGljIFJlZjxIVE1M
RGlhbG9nRWxlbWVudD4gY3JlYXRlKEFyZ3MmJi4uLiBhcmdzKSB7IHJldHVybiBhZG9wdFJlZigq
bmV3IEhUTUxEaWFsb2dFbGVtZW50KHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdzKS4uLikpOyB9CiAg
ICAgfkhUTUxEaWFsb2dFbGVtZW50KCk7Ci0gICAgCi0gICAgYm9vbCBpc09wZW4oKSBjb25zdDsK
IAotICAgIGNvbnN0IFN0cmluZyYgcmV0dXJuVmFsdWUoKTsKLSAgICB2b2lkIHNldFJldHVyblZh
bHVlKFN0cmluZyYmKTsKKyAgICBib29sIGlzT3BlbigpIGNvbnN0IHsgcmV0dXJuIGhhc0F0dHJp
YnV0ZShIVE1MTmFtZXM6Om9wZW5BdHRyKTsgfQorCisgICAgY29uc3QgU3RyaW5nJiByZXR1cm5W
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmV0dXJuVmFsdWU7IH0KKyAgICB2b2lkIHNldFJldHVy
blZhbHVlKFN0cmluZyYmIHZhbHVlKSB7IG1fcmV0dXJuVmFsdWUgPSBXVEZNb3ZlKHZhbHVlKTsg
fQogCiAgICAgdm9pZCBzaG93KCk7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gc2hvd01vZGFsKCk7
CkBAIC00OSwxNiArNDksMTMgQEAgcHVibGljOgogCiAgICAgdm9pZCBkaXNwYXRjaFBlbmRpbmdF
dmVudChEaWFsb2dFdmVudFNlbmRlciopOwogCi0gICAgYm9vbCBpc01vZGFsKCkgY29uc3Q7Cisg
ICAgYm9vbCBpc01vZGFsKCkgY29uc3QgeyByZXR1cm4gbV9pc01vZGFsOyB9OwogCiBwcml2YXRl
OgogICAgIEhUTUxEaWFsb2dFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYp
OwogCi0gICAgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgY29uc3Qg
QXRvbVN0cmluZyYpIGZpbmFsOwotCiAgICAgU3RyaW5nIG1fcmV0dXJuVmFsdWU7CiAgICAgYm9v
bCBtX2lzTW9kYWwgeyBmYWxzZSB9OwotICAgIGJvb2wgbV9pc09wZW4geyBmYWxzZSB9OwogfTsK
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433438</attachid>
            <date>2021-07-13 11:56:09 -0700</date>
            <delta_ts>2021-07-13 12:04:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227872-20210713205608.patch</filename>
            <type>text/plain</type>
            <size>5677</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5ODY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDhiNTVlOGY1Y2YzOTVh
ZDZjODQyYzU1YTQwMjViMzBiM2MwYTAyNy4uYThmMDZiNTgwYmMyYmU4ZjJlMjk1NjU5NDNhMjg3
ODk4ODBlNDRhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA3LTEzICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgPGRpYWxvZz4gZWxlbWVudDogZG8g
bm90IHBlcmZvcm0gY2xvc2UoKSBtZXRob2Qgc3RlcHMgd2hlbiByZW1vdmluZyBvcGVuIGF0dHJp
YnV0ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
Nzg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRo
ZSBjbG9zZSBmdW5jdGlvbiBub3cgZm9sbG93cyB0aGUgc3RlcHMgYXQ6IGh0dHBzOi8vaHRtbC5z
cGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2ludGVyYWN0aXZlLWVsZW1lbnRzLmh0bWwjY2xvc2Ut
dGhlLWRpYWxvZworCisgICAgICAgICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6c2hvdyk6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MRGlhbG9nRWxlbWVudDo6c2hvd01vZGFsKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxE
aWFsb2dFbGVtZW50OjpjbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVu
dDo6ZGlzcGF0Y2hQZW5kaW5nRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0Vs
ZW1lbnQ6OmlzT3BlbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlh
bG9nRWxlbWVudDo6cmV0dXJuVmFsdWUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TERpYWxvZ0VsZW1lbnQ6OnNldFJldHVyblZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxEaWFsb2dFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6aXNNb2RhbCBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oOgorCiAyMDIxLTA3LTEzICBNYXJ0aW4g
Um9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBSZW5kZXJMYXllclNj
cm9sbGFibGVBcmVhOjp1cGRhdGVTY3JvbGxQb3NpdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2FuIHNj
cm9sbCB0byB0aGUgdGFyZ2V0ZWQgc2Nyb2xsIHBvc2l0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTERpYWxvZ0VsZW1lbnQuY3BwCmluZGV4IDY2MTVhOGE4N2I5OTcyZWY5YzZkZGJiODkzM2U4
Zjk5MTEyOWYzYWIuLjk0YWVlZjZjZThiNjk5OGVjZjcxNGRjYzM1ZjhlNjkwMTdmOThjNmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuY3BwCkBAIC01MywyNyArNTMs
MTIgQEAgSFRNTERpYWxvZ0VsZW1lbnQ6On5IVE1MRGlhbG9nRWxlbWVudCgpCiAgICAgZGlhbG9n
Q2xvc2VFdmVudFNlbmRlcigpLmNhbmNlbEV2ZW50KCp0aGlzKTsKIH0KIAotYm9vbCBIVE1MRGlh
bG9nRWxlbWVudDo6aXNPcGVuKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9pc09wZW47Ci19Ci0K
LWNvbnN0IFN0cmluZyYgSFRNTERpYWxvZ0VsZW1lbnQ6OnJldHVyblZhbHVlKCkKLXsKLSAgICBy
ZXR1cm4gbV9yZXR1cm5WYWx1ZTsKLX0KLQotdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6c2V0UmV0
dXJuVmFsdWUoU3RyaW5nJiYgcmV0dXJuVmFsdWUpCi17Ci0gICAgbV9yZXR1cm5WYWx1ZSA9IFdU
Rk1vdmUocmV0dXJuVmFsdWUpOwotfQotCiB2b2lkIEhUTUxEaWFsb2dFbGVtZW50OjpzaG93KCkK
IHsKICAgICAvLyBJZiB0aGUgZWxlbWVudCBhbHJlYWR5IGhhcyBhbiBvcGVuIGF0dHJpYnV0ZSwg
dGhlbiByZXR1cm4uCiAgICAgaWYgKGlzT3BlbigpKQogICAgICAgICByZXR1cm47Ci0gICAgCisK
ICAgICBzZXRCb29sZWFuQXR0cmlidXRlKG9wZW5BdHRyLCB0cnVlKTsKIH0KIApAQCAtODksMjEg
Kzc0LDM1IEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxEaWFsb2dFbGVtZW50OjpzaG93TW9kYWwo
KQogCiAgICAgc2V0Qm9vbGVhbkF0dHJpYnV0ZShvcGVuQXR0ciwgdHJ1ZSk7CiAKLSAgICBkb2N1
bWVudCgpLmFkZFRvVG9wTGF5ZXIoKnRoaXMpOwogICAgIG1faXNNb2RhbCA9IHRydWU7CiAKKyAg
ICAvLyBGSVhNRTogb25seSBhZGQgZGlhbG9nIHRvIHRvcCBsYXllciBpZiBpdCdzIG5vdCBhbHJl
YWR5IGluIGl0ICh3ZWJraXQub3JnL2IvMjI3OTA3KQorICAgIGRvY3VtZW50KCkuYWRkVG9Ub3BM
YXllcigqdGhpcyk7CisKKyAgICAvLyBGSVhNRTogQWRkIHN0ZXBzIDggJiA5IGZyb20gc3BlYyAo
d2Via2l0Lm9yZy9iLzIyNzUzNykKKwogICAgIHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRNTERp
YWxvZ0VsZW1lbnQ6OmNsb3NlKGNvbnN0IFN0cmluZyYgcmV0dXJuVmFsdWUpCit2b2lkIEhUTUxE
aWFsb2dFbGVtZW50OjpjbG9zZShjb25zdCBTdHJpbmcmIHJlc3VsdCkKIHsKICAgICBpZiAoIWlz
T3BlbigpKQogICAgICAgICByZXR1cm47Ci0gICAgCisKICAgICBzZXRCb29sZWFuQXR0cmlidXRl
KG9wZW5BdHRyLCBmYWxzZSk7CiAKLSAgICBpZiAoIXJldHVyblZhbHVlLmlzTnVsbCgpKQotICAg
ICAgICBtX3JldHVyblZhbHVlID0gcmV0dXJuVmFsdWU7CisgICAgbV9pc01vZGFsID0gZmFsc2U7
CisKKyAgICBpZiAoIXJlc3VsdC5pc051bGwoKSkKKyAgICAgICAgbV9yZXR1cm5WYWx1ZSA9IHJl
c3VsdDsKKworICAgIC8vIEZJWE1FOiBvbmx5IHJlbW92ZSBkaWFsb2cgZnJvbSB0b3AgbGF5ZXIg
aWYgaXQncyBpbnNpZGUgaXQgKHdlYmtpdC5vcmcvYi8yMjc5MDcpCisgICAgZG9jdW1lbnQoKS5y
ZW1vdmVGcm9tVG9wTGF5ZXIoKnRoaXMpOworCisgICAgLy8gRklYTUU6IEFkZCBzdGVwIDYgZnJv
bSBzcGVjICh3ZWJraXQub3JnL2IvMjI3NTM3KQorCisgICAgZGlhbG9nQ2xvc2VFdmVudFNlbmRl
cigpLmNhbmNlbEV2ZW50KCp0aGlzKTsKKyAgICBkaWFsb2dDbG9zZUV2ZW50U2VuZGVyKCkuZGlz
cGF0Y2hFdmVudFNvb24oKnRoaXMpOwogfQogCiB2b2lkIEhUTUxEaWFsb2dFbGVtZW50OjpkaXNw
YXRjaFBlbmRpbmdFdmVudChEaWFsb2dFdmVudFNlbmRlciogZXZlbnRTZW5kZXIpCkBAIC0xMTIs
MzEgKzExMSw0IEBAIHZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OmRpc3BhdGNoUGVuZGluZ0V2ZW50
KERpYWxvZ0V2ZW50U2VuZGVyKiBldmVudFNlbmRlcikKICAgICBkaXNwYXRjaEV2ZW50KEV2ZW50
OjpjcmVhdGUoZXZlbnROYW1lcygpLmNsb3NlRXZlbnQsIEV2ZW50OjpDYW5CdWJibGU6Ok5vLCBF
dmVudDo6SXNDYW5jZWxhYmxlOjpObykpOwogfQogCi12b2lkIEhUTUxEaWFsb2dFbGVtZW50Ojpw
YXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiBuYW1lLCBjb25zdCBBdG9tU3RyaW5n
JiB2YWx1ZSkKLXsKLSAgICBpZiAobmFtZSA9PSBvcGVuQXR0cikgewotICAgICAgICBib29sIG9s
ZFZhbHVlID0gbV9pc09wZW47Ci0gICAgICAgIG1faXNPcGVuID0gIXZhbHVlLmlzTnVsbCgpOwot
Ci0gICAgICAgIC8vIEVtaXQgY2xvc2UgZXZlbnQKLSAgICAgICAgaWYgKG9sZFZhbHVlICE9IG1f
aXNPcGVuICYmICFtX2lzT3BlbikgewotICAgICAgICAgICAgaWYgKG1faXNNb2RhbCkgewotICAg
ICAgICAgICAgICAgIGRvY3VtZW50KCkucmVtb3ZlRnJvbVRvcExheWVyKCp0aGlzKTsKLSAgICAg
ICAgICAgICAgICBtX2lzTW9kYWwgPSBmYWxzZTsKLSAgICAgICAgICAgIH0KLQotICAgICAgICAg
ICAgZGlhbG9nQ2xvc2VFdmVudFNlbmRlcigpLmNhbmNlbEV2ZW50KCp0aGlzKTsKLSAgICAgICAg
ICAgIGRpYWxvZ0Nsb3NlRXZlbnRTZW5kZXIoKS5kaXNwYXRjaEV2ZW50U29vbigqdGhpcyk7Ci0g
ICAgICAgIH0KLSAgICAgICAgcmV0dXJuOwotICAgIH0KLSAgICAKLSAgICBIVE1MRWxlbWVudDo6
cGFyc2VBdHRyaWJ1dGUobmFtZSwgdmFsdWUpOwotfQotCi1ib29sIEhUTUxEaWFsb2dFbGVtZW50
Ojppc01vZGFsKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9pc01vZGFsOwotfQotCiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmgKaW5kZXggNjJiMzUyZDA1NjliODJhZWJi
N2ZlYjQ1NDMwZWJiNTdhYzgwY2M1Zi4uNzgyOTgxMzQ1MmVlMzk5NmY1Nzc0YjZjMDZlMmExMWQy
ZTMzNzgzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaApAQCAtMzcs
MTEgKzM3LDExIEBAIGNsYXNzIEhUTUxEaWFsb2dFbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxF
bGVtZW50IHsKIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZS4uLiBBcmdzPiBzdGF0aWMg
UmVmPEhUTUxEaWFsb2dFbGVtZW50PiBjcmVhdGUoQXJncyYmLi4uIGFyZ3MpIHsgcmV0dXJuIGFk
b3B0UmVmKCpuZXcgSFRNTERpYWxvZ0VsZW1lbnQoc3RkOjpmb3J3YXJkPEFyZ3M+KGFyZ3MpLi4u
KSk7IH0KICAgICB+SFRNTERpYWxvZ0VsZW1lbnQoKTsKLSAgICAKLSAgICBib29sIGlzT3Blbigp
IGNvbnN0OwogCi0gICAgY29uc3QgU3RyaW5nJiByZXR1cm5WYWx1ZSgpOwotICAgIHZvaWQgc2V0
UmV0dXJuVmFsdWUoU3RyaW5nJiYpOworICAgIGJvb2wgaXNPcGVuKCkgY29uc3QgeyByZXR1cm4g
aGFzQXR0cmlidXRlKEhUTUxOYW1lczo6b3BlbkF0dHIpOyB9CisKKyAgICBjb25zdCBTdHJpbmcm
IHJldHVyblZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9yZXR1cm5WYWx1ZTsgfQorICAgIHZvaWQg
c2V0UmV0dXJuVmFsdWUoU3RyaW5nJiYgdmFsdWUpIHsgbV9yZXR1cm5WYWx1ZSA9IFdURk1vdmUo
dmFsdWUpOyB9CiAKICAgICB2b2lkIHNob3coKTsKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBzaG93
TW9kYWwoKTsKQEAgLTQ5LDE2ICs0OSwxMyBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGRpc3BhdGNo
UGVuZGluZ0V2ZW50KERpYWxvZ0V2ZW50U2VuZGVyKik7CiAKLSAgICBib29sIGlzTW9kYWwoKSBj
b25zdDsKKyAgICBib29sIGlzTW9kYWwoKSBjb25zdCB7IHJldHVybiBtX2lzTW9kYWw7IH07CiAK
IHByaXZhdGU6CiAgICAgSFRNTERpYWxvZ0VsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERv
Y3VtZW50Jik7CiAKLSAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBjb25zdCBBdG9tU3RyaW5nJikgZmluYWw7Ci0KICAgICBTdHJpbmcgbV9yZXR1cm5WYWx1ZTsK
ICAgICBib29sIG1faXNNb2RhbCB7IGZhbHNlIH07Ci0gICAgYm9vbCBtX2lzT3BlbiB7IGZhbHNl
IH07CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433439</attachid>
            <date>2021-07-13 12:04:42 -0700</date>
            <delta_ts>2021-07-15 06:16:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227872-20210713210441.patch</filename>
            <type>text/plain</type>
            <size>5681</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5ODY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDhiNTVlOGY1Y2YzOTVh
ZDZjODQyYzU1YTQwMjViMzBiM2MwYTAyNy4uYThmMDZiNTgwYmMyYmU4ZjJlMjk1NjU5NDNhMjg3
ODk4ODBlNDRhMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIxLTA3LTEzICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgPGRpYWxvZz4gZWxlbWVudDogZG8g
bm90IHBlcmZvcm0gY2xvc2UoKSBtZXRob2Qgc3RlcHMgd2hlbiByZW1vdmluZyBvcGVuIGF0dHJp
YnV0ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
Nzg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRo
ZSBjbG9zZSBmdW5jdGlvbiBub3cgZm9sbG93cyB0aGUgc3RlcHMgYXQ6IGh0dHBzOi8vaHRtbC5z
cGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlL2ludGVyYWN0aXZlLWVsZW1lbnRzLmh0bWwjY2xvc2Ut
dGhlLWRpYWxvZworCisgICAgICAgICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6c2hvdyk6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MRGlhbG9nRWxlbWVudDo6c2hvd01vZGFsKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxE
aWFsb2dFbGVtZW50OjpjbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVu
dDo6ZGlzcGF0Y2hQZW5kaW5nRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0Vs
ZW1lbnQ6OmlzT3BlbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlh
bG9nRWxlbWVudDo6cmV0dXJuVmFsdWUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TERpYWxvZ0VsZW1lbnQ6OnNldFJldHVyblZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxEaWFsb2dFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6aXNNb2RhbCBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oOgorCiAyMDIxLTA3LTEzICBNYXJ0aW4g
Um9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBSZW5kZXJMYXllclNj
cm9sbGFibGVBcmVhOjp1cGRhdGVTY3JvbGxQb3NpdGlvbiBhc3N1bWVzIHRoYXQgaXQgY2FuIHNj
cm9sbCB0byB0aGUgdGFyZ2V0ZWQgc2Nyb2xsIHBvc2l0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTERpYWxvZ0VsZW1lbnQuY3BwCmluZGV4IDY2MTVhOGE4N2I5OTcyZWY5YzZkZGJiODkzM2U4
Zjk5MTEyOWYzYWIuLjljYzViZGFmMDJkYzgxNjllNGVjNDZmNmJkYjcwYTRmNTg5MmRjZWIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuY3BwCkBAIC01MywyNyArNTMs
MTIgQEAgSFRNTERpYWxvZ0VsZW1lbnQ6On5IVE1MRGlhbG9nRWxlbWVudCgpCiAgICAgZGlhbG9n
Q2xvc2VFdmVudFNlbmRlcigpLmNhbmNlbEV2ZW50KCp0aGlzKTsKIH0KIAotYm9vbCBIVE1MRGlh
bG9nRWxlbWVudDo6aXNPcGVuKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9pc09wZW47Ci19Ci0K
LWNvbnN0IFN0cmluZyYgSFRNTERpYWxvZ0VsZW1lbnQ6OnJldHVyblZhbHVlKCkKLXsKLSAgICBy
ZXR1cm4gbV9yZXR1cm5WYWx1ZTsKLX0KLQotdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6c2V0UmV0
dXJuVmFsdWUoU3RyaW5nJiYgcmV0dXJuVmFsdWUpCi17Ci0gICAgbV9yZXR1cm5WYWx1ZSA9IFdU
Rk1vdmUocmV0dXJuVmFsdWUpOwotfQotCiB2b2lkIEhUTUxEaWFsb2dFbGVtZW50OjpzaG93KCkK
IHsKICAgICAvLyBJZiB0aGUgZWxlbWVudCBhbHJlYWR5IGhhcyBhbiBvcGVuIGF0dHJpYnV0ZSwg
dGhlbiByZXR1cm4uCiAgICAgaWYgKGlzT3BlbigpKQogICAgICAgICByZXR1cm47Ci0gICAgCisK
ICAgICBzZXRCb29sZWFuQXR0cmlidXRlKG9wZW5BdHRyLCB0cnVlKTsKIH0KIApAQCAtODksMjEg
Kzc0LDM1IEBAIEV4Y2VwdGlvbk9yPHZvaWQ+IEhUTUxEaWFsb2dFbGVtZW50OjpzaG93TW9kYWwo
KQogCiAgICAgc2V0Qm9vbGVhbkF0dHJpYnV0ZShvcGVuQXR0ciwgdHJ1ZSk7CiAKLSAgICBkb2N1
bWVudCgpLmFkZFRvVG9wTGF5ZXIoKnRoaXMpOwogICAgIG1faXNNb2RhbCA9IHRydWU7CiAKKyAg
ICAvLyBGSVhNRTogT25seSBhZGQgZGlhbG9nIHRvIHRvcCBsYXllciBpZiBpdCdzIG5vdCBhbHJl
YWR5IGluIGl0LiAod2Via2l0Lm9yZy9iLzIyNzkwNykKKyAgICBkb2N1bWVudCgpLmFkZFRvVG9w
TGF5ZXIoKnRoaXMpOworCisgICAgLy8gRklYTUU6IEFkZCBzdGVwcyA4ICYgOSBmcm9tIHNwZWMu
ICh3ZWJraXQub3JnL2IvMjI3NTM3KQorCiAgICAgcmV0dXJuIHsgfTsKIH0KIAotdm9pZCBIVE1M
RGlhbG9nRWxlbWVudDo6Y2xvc2UoY29uc3QgU3RyaW5nJiByZXR1cm5WYWx1ZSkKK3ZvaWQgSFRN
TERpYWxvZ0VsZW1lbnQ6OmNsb3NlKGNvbnN0IFN0cmluZyYgcmVzdWx0KQogewogICAgIGlmICgh
aXNPcGVuKCkpCiAgICAgICAgIHJldHVybjsKLSAgICAKKwogICAgIHNldEJvb2xlYW5BdHRyaWJ1
dGUob3BlbkF0dHIsIGZhbHNlKTsKIAotICAgIGlmICghcmV0dXJuVmFsdWUuaXNOdWxsKCkpCi0g
ICAgICAgIG1fcmV0dXJuVmFsdWUgPSByZXR1cm5WYWx1ZTsKKyAgICBtX2lzTW9kYWwgPSBmYWxz
ZTsKKworICAgIGlmICghcmVzdWx0LmlzTnVsbCgpKQorICAgICAgICBtX3JldHVyblZhbHVlID0g
cmVzdWx0OworCisgICAgLy8gRklYTUU6IE9ubHkgcmVtb3ZlIGRpYWxvZyBmcm9tIHRvcCBsYXll
ciBpZiBpdCdzIGluc2lkZSBpdC4gKHdlYmtpdC5vcmcvYi8yMjc5MDcpCisgICAgZG9jdW1lbnQo
KS5yZW1vdmVGcm9tVG9wTGF5ZXIoKnRoaXMpOworCisgICAgLy8gRklYTUU6IEFkZCBzdGVwIDYg
ZnJvbSBzcGVjLiAod2Via2l0Lm9yZy9iLzIyNzUzNykKKworICAgIGRpYWxvZ0Nsb3NlRXZlbnRT
ZW5kZXIoKS5jYW5jZWxFdmVudCgqdGhpcyk7CisgICAgZGlhbG9nQ2xvc2VFdmVudFNlbmRlcigp
LmRpc3BhdGNoRXZlbnRTb29uKCp0aGlzKTsKIH0KIAogdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6
ZGlzcGF0Y2hQZW5kaW5nRXZlbnQoRGlhbG9nRXZlbnRTZW5kZXIqIGV2ZW50U2VuZGVyKQpAQCAt
MTEyLDMxICsxMTEsNCBAQCB2b2lkIEhUTUxEaWFsb2dFbGVtZW50OjpkaXNwYXRjaFBlbmRpbmdF
dmVudChEaWFsb2dFdmVudFNlbmRlciogZXZlbnRTZW5kZXIpCiAgICAgZGlzcGF0Y2hFdmVudChF
dmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5jbG9zZUV2ZW50LCBFdmVudDo6Q2FuQnViYmxlOjpO
bywgRXZlbnQ6OklzQ2FuY2VsYWJsZTo6Tm8pKTsKIH0KIAotdm9pZCBIVE1MRGlhbG9nRWxlbWVu
dDo6cGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbVN0
cmluZyYgdmFsdWUpCi17Ci0gICAgaWYgKG5hbWUgPT0gb3BlbkF0dHIpIHsKLSAgICAgICAgYm9v
bCBvbGRWYWx1ZSA9IG1faXNPcGVuOwotICAgICAgICBtX2lzT3BlbiA9ICF2YWx1ZS5pc051bGwo
KTsKLQotICAgICAgICAvLyBFbWl0IGNsb3NlIGV2ZW50Ci0gICAgICAgIGlmIChvbGRWYWx1ZSAh
PSBtX2lzT3BlbiAmJiAhbV9pc09wZW4pIHsKLSAgICAgICAgICAgIGlmIChtX2lzTW9kYWwpIHsK
LSAgICAgICAgICAgICAgICBkb2N1bWVudCgpLnJlbW92ZUZyb21Ub3BMYXllcigqdGhpcyk7Ci0g
ICAgICAgICAgICAgICAgbV9pc01vZGFsID0gZmFsc2U7Ci0gICAgICAgICAgICB9Ci0KLSAgICAg
ICAgICAgIGRpYWxvZ0Nsb3NlRXZlbnRTZW5kZXIoKS5jYW5jZWxFdmVudCgqdGhpcyk7Ci0gICAg
ICAgICAgICBkaWFsb2dDbG9zZUV2ZW50U2VuZGVyKCkuZGlzcGF0Y2hFdmVudFNvb24oKnRoaXMp
OwotICAgICAgICB9Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgCi0gICAgSFRNTEVsZW1l
bnQ6OnBhcnNlQXR0cmlidXRlKG5hbWUsIHZhbHVlKTsKLX0KLQotYm9vbCBIVE1MRGlhbG9nRWxl
bWVudDo6aXNNb2RhbCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1faXNNb2RhbDsKLX0KLQogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oCmluZGV4IDYyYjM1MmQwNTY5Yjgy
YWViYjdmZWI0NTQzMGViYjU3YWM4MGNjNWYuLjc4Mjk4MTM0NTJlZTM5OTZmNTc3NGI2YzA2ZTJh
MTFkMmUzMzc4M2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0Vs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmgKQEAg
LTM3LDExICszNywxMSBAQCBjbGFzcyBIVE1MRGlhbG9nRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBI
VE1MRWxlbWVudCB7CiBwdWJsaWM6CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUuLi4gQXJncz4gc3Rh
dGljIFJlZjxIVE1MRGlhbG9nRWxlbWVudD4gY3JlYXRlKEFyZ3MmJi4uLiBhcmdzKSB7IHJldHVy
biBhZG9wdFJlZigqbmV3IEhUTUxEaWFsb2dFbGVtZW50KHN0ZDo6Zm9yd2FyZDxBcmdzPihhcmdz
KS4uLikpOyB9CiAgICAgfkhUTUxEaWFsb2dFbGVtZW50KCk7Ci0gICAgCi0gICAgYm9vbCBpc09w
ZW4oKSBjb25zdDsKIAotICAgIGNvbnN0IFN0cmluZyYgcmV0dXJuVmFsdWUoKTsKLSAgICB2b2lk
IHNldFJldHVyblZhbHVlKFN0cmluZyYmKTsKKyAgICBib29sIGlzT3BlbigpIGNvbnN0IHsgcmV0
dXJuIGhhc0F0dHJpYnV0ZShIVE1MTmFtZXM6Om9wZW5BdHRyKTsgfQorCisgICAgY29uc3QgU3Ry
aW5nJiByZXR1cm5WYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fcmV0dXJuVmFsdWU7IH0KKyAgICB2
b2lkIHNldFJldHVyblZhbHVlKFN0cmluZyYmIHZhbHVlKSB7IG1fcmV0dXJuVmFsdWUgPSBXVEZN
b3ZlKHZhbHVlKTsgfQogCiAgICAgdm9pZCBzaG93KCk7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4g
c2hvd01vZGFsKCk7CkBAIC00OSwxNiArNDksMTMgQEAgcHVibGljOgogCiAgICAgdm9pZCBkaXNw
YXRjaFBlbmRpbmdFdmVudChEaWFsb2dFdmVudFNlbmRlciopOwogCi0gICAgYm9vbCBpc01vZGFs
KCkgY29uc3Q7CisgICAgYm9vbCBpc01vZGFsKCkgY29uc3QgeyByZXR1cm4gbV9pc01vZGFsOyB9
OwogCiBwcml2YXRlOgogICAgIEhUTUxEaWFsb2dFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBEb2N1bWVudCYpOwogCi0gICAgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWRO
YW1lJiwgY29uc3QgQXRvbVN0cmluZyYpIGZpbmFsOwotCiAgICAgU3RyaW5nIG1fcmV0dXJuVmFs
dWU7CiAgICAgYm9vbCBtX2lzTW9kYWwgeyBmYWxzZSB9OwotICAgIGJvb2wgbV9pc09wZW4geyBm
YWxzZSB9OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>433580</attachid>
            <date>2021-07-15 06:16:45 -0700</date>
            <delta_ts>2021-07-15 09:16:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-227872-20210715151644.patch</filename>
            <type>text/plain</type>
            <size>7903</size>
            <attacher name="Tim Nguyen (:ntim)">ntim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc5OTQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTg3Y2QyMzY1MDZiZDVh
NDUwMjU1NzJiNTNhNjg1NGU2NGJkNjA5Yi4uYmM5YjJjZjQ2NTVlMzQ5ZWQwZDljZWZjNWVhZmY5
NDViNGQxZDQ0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDIxLTA3LTE1ICBUaW0g
Tmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CisKKyAgICAgICAgPGRpYWxvZz4gZWxlbWVudDogZG8g
bm90IHBlcmZvcm0gY2xvc2UoKSBtZXRob2Qgc3RlcHMgd2hlbiByZW1vdmluZyBvcGVuIGF0dHJp
YnV0ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIy
Nzg3MgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRl
c3Q6IHdlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9pbnRlcmFjdGl2ZS1lbGVtZW50
cy90aGUtZGlhbG9nLWVsZW1lbnQvZGlhbG9nLW9wZW4uaHRtbAorCisgICAgICAgIFRoZSBjbG9z
ZSBmdW5jdGlvbiBub3cgZm9sbG93cyB0aGUgc3RlcHMgYXQ6IGh0dHBzOi8vaHRtbC5zcGVjLndo
YXR3Zy5vcmcvbXVsdGlwYWdlL2ludGVyYWN0aXZlLWVsZW1lbnRzLmh0bWwjY2xvc2UtdGhlLWRp
YWxvZworCisgICAgICAgICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6c2hvdyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
RGlhbG9nRWxlbWVudDo6c2hvd01vZGFsKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEaWFsb2dF
bGVtZW50OjpjbG9zZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6ZGlz
cGF0Y2hQZW5kaW5nRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxvZ0VsZW1lbnQ6
OmlzT3BlbiBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpIVE1MRGlhbG9nRWxl
bWVudDo6cmV0dXJuVmFsdWUpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6SFRNTERpYWxv
Z0VsZW1lbnQ6OnNldFJldHVyblZhbHVlKTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxEaWFsb2dFbGVtZW50OjpwYXJzZUF0dHJpYnV0ZSk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpIVE1MRGlhbG9nRWxlbWVudDo6aXNNb2RhbCBjb25zdCk6IERlbGV0ZWQuCisgICAgICAg
ICogaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oOgorCiAyMDIxLTA3LTE1ICBBZHJpYW4gUGVyZXog
ZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgTm9uLXVuaWZpZWQgYnVp
bGQgZml4ZXMsIG1pZC1KdWx5IDIwMjEgZWRpdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxE
aWFsb2dFbGVtZW50LmNwcAppbmRleCA2NjE1YThhODdiOTk3MmVmOWM2ZGRiYjg5MzNlOGY5OTEx
MjlmM2FiLi45Y2M1YmRhZjAyZGM4MTY5ZTRlYzQ2ZjZiZGI3MGE0ZjU4OTJkY2ViIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50LmNwcApAQCAtNTMsMjcgKzUzLDEyIEBA
IEhUTUxEaWFsb2dFbGVtZW50Ojp+SFRNTERpYWxvZ0VsZW1lbnQoKQogICAgIGRpYWxvZ0Nsb3Nl
RXZlbnRTZW5kZXIoKS5jYW5jZWxFdmVudCgqdGhpcyk7CiB9CiAKLWJvb2wgSFRNTERpYWxvZ0Vs
ZW1lbnQ6OmlzT3BlbigpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1faXNPcGVuOwotfQotCi1jb25z
dCBTdHJpbmcmIEhUTUxEaWFsb2dFbGVtZW50OjpyZXR1cm5WYWx1ZSgpCi17Ci0gICAgcmV0dXJu
IG1fcmV0dXJuVmFsdWU7Ci19Ci0KLXZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OnNldFJldHVyblZh
bHVlKFN0cmluZyYmIHJldHVyblZhbHVlKQotewotICAgIG1fcmV0dXJuVmFsdWUgPSBXVEZNb3Zl
KHJldHVyblZhbHVlKTsKLX0KLQogdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6c2hvdygpCiB7CiAg
ICAgLy8gSWYgdGhlIGVsZW1lbnQgYWxyZWFkeSBoYXMgYW4gb3BlbiBhdHRyaWJ1dGUsIHRoZW4g
cmV0dXJuLgogICAgIGlmIChpc09wZW4oKSkKICAgICAgICAgcmV0dXJuOwotICAgIAorCiAgICAg
c2V0Qm9vbGVhbkF0dHJpYnV0ZShvcGVuQXR0ciwgdHJ1ZSk7CiB9CiAKQEAgLTg5LDIxICs3NCwz
NSBAQCBFeGNlcHRpb25Pcjx2b2lkPiBIVE1MRGlhbG9nRWxlbWVudDo6c2hvd01vZGFsKCkKIAog
ICAgIHNldEJvb2xlYW5BdHRyaWJ1dGUob3BlbkF0dHIsIHRydWUpOwogCi0gICAgZG9jdW1lbnQo
KS5hZGRUb1RvcExheWVyKCp0aGlzKTsKICAgICBtX2lzTW9kYWwgPSB0cnVlOwogCisgICAgLy8g
RklYTUU6IE9ubHkgYWRkIGRpYWxvZyB0byB0b3AgbGF5ZXIgaWYgaXQncyBub3QgYWxyZWFkeSBp
biBpdC4gKHdlYmtpdC5vcmcvYi8yMjc5MDcpCisgICAgZG9jdW1lbnQoKS5hZGRUb1RvcExheWVy
KCp0aGlzKTsKKworICAgIC8vIEZJWE1FOiBBZGQgc3RlcHMgOCAmIDkgZnJvbSBzcGVjLiAod2Vi
a2l0Lm9yZy9iLzIyNzUzNykKKwogICAgIHJldHVybiB7IH07CiB9CiAKLXZvaWQgSFRNTERpYWxv
Z0VsZW1lbnQ6OmNsb3NlKGNvbnN0IFN0cmluZyYgcmV0dXJuVmFsdWUpCit2b2lkIEhUTUxEaWFs
b2dFbGVtZW50OjpjbG9zZShjb25zdCBTdHJpbmcmIHJlc3VsdCkKIHsKICAgICBpZiAoIWlzT3Bl
bigpKQogICAgICAgICByZXR1cm47Ci0gICAgCisKICAgICBzZXRCb29sZWFuQXR0cmlidXRlKG9w
ZW5BdHRyLCBmYWxzZSk7CiAKLSAgICBpZiAoIXJldHVyblZhbHVlLmlzTnVsbCgpKQotICAgICAg
ICBtX3JldHVyblZhbHVlID0gcmV0dXJuVmFsdWU7CisgICAgbV9pc01vZGFsID0gZmFsc2U7CisK
KyAgICBpZiAoIXJlc3VsdC5pc051bGwoKSkKKyAgICAgICAgbV9yZXR1cm5WYWx1ZSA9IHJlc3Vs
dDsKKworICAgIC8vIEZJWE1FOiBPbmx5IHJlbW92ZSBkaWFsb2cgZnJvbSB0b3AgbGF5ZXIgaWYg
aXQncyBpbnNpZGUgaXQuICh3ZWJraXQub3JnL2IvMjI3OTA3KQorICAgIGRvY3VtZW50KCkucmVt
b3ZlRnJvbVRvcExheWVyKCp0aGlzKTsKKworICAgIC8vIEZJWE1FOiBBZGQgc3RlcCA2IGZyb20g
c3BlYy4gKHdlYmtpdC5vcmcvYi8yMjc1MzcpCisKKyAgICBkaWFsb2dDbG9zZUV2ZW50U2VuZGVy
KCkuY2FuY2VsRXZlbnQoKnRoaXMpOworICAgIGRpYWxvZ0Nsb3NlRXZlbnRTZW5kZXIoKS5kaXNw
YXRjaEV2ZW50U29vbigqdGhpcyk7CiB9CiAKIHZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OmRpc3Bh
dGNoUGVuZGluZ0V2ZW50KERpYWxvZ0V2ZW50U2VuZGVyKiBldmVudFNlbmRlcikKQEAgLTExMiwz
MSArMTExLDQgQEAgdm9pZCBIVE1MRGlhbG9nRWxlbWVudDo6ZGlzcGF0Y2hQZW5kaW5nRXZlbnQo
RGlhbG9nRXZlbnRTZW5kZXIqIGV2ZW50U2VuZGVyKQogICAgIGRpc3BhdGNoRXZlbnQoRXZlbnQ6
OmNyZWF0ZShldmVudE5hbWVzKCkuY2xvc2VFdmVudCwgRXZlbnQ6OkNhbkJ1YmJsZTo6Tm8sIEV2
ZW50OjpJc0NhbmNlbGFibGU6Ok5vKSk7CiB9CiAKLXZvaWQgSFRNTERpYWxvZ0VsZW1lbnQ6OnBh
cnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21TdHJpbmcm
IHZhbHVlKQotewotICAgIGlmIChuYW1lID09IG9wZW5BdHRyKSB7Ci0gICAgICAgIGJvb2wgb2xk
VmFsdWUgPSBtX2lzT3BlbjsKLSAgICAgICAgbV9pc09wZW4gPSAhdmFsdWUuaXNOdWxsKCk7Ci0K
LSAgICAgICAgLy8gRW1pdCBjbG9zZSBldmVudAotICAgICAgICBpZiAob2xkVmFsdWUgIT0gbV9p
c09wZW4gJiYgIW1faXNPcGVuKSB7Ci0gICAgICAgICAgICBpZiAobV9pc01vZGFsKSB7Ci0gICAg
ICAgICAgICAgICAgZG9jdW1lbnQoKS5yZW1vdmVGcm9tVG9wTGF5ZXIoKnRoaXMpOwotICAgICAg
ICAgICAgICAgIG1faXNNb2RhbCA9IGZhbHNlOwotICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBkaWFsb2dDbG9zZUV2ZW50U2VuZGVyKCkuY2FuY2VsRXZlbnQoKnRoaXMpOwotICAgICAgICAg
ICAgZGlhbG9nQ2xvc2VFdmVudFNlbmRlcigpLmRpc3BhdGNoRXZlbnRTb29uKCp0aGlzKTsKLSAg
ICAgICAgfQotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIAotICAgIEhUTUxFbGVtZW50Ojpw
YXJzZUF0dHJpYnV0ZShuYW1lLCB2YWx1ZSk7Ci19Ci0KLWJvb2wgSFRNTERpYWxvZ0VsZW1lbnQ6
OmlzTW9kYWwoKSBjb25zdAotewotICAgIHJldHVybiBtX2lzTW9kYWw7Ci19Ci0KIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTERpYWxvZ0VsZW1lbnQuaAppbmRleCA2MmIzNTJkMDU2OWI4MmFlYmI3
ZmViNDU0MzBlYmI1N2FjODBjYzVmLi43ODI5ODEzNDUyZWUzOTk2ZjU3NzRiNmMwNmUyYTExZDJl
MzM3ODNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxEaWFsb2dFbGVtZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRGlhbG9nRWxlbWVudC5oCkBAIC0zNywx
MSArMzcsMTEgQEAgY2xhc3MgSFRNTERpYWxvZ0VsZW1lbnQgZmluYWwgOiBwdWJsaWMgSFRNTEVs
ZW1lbnQgewogcHVibGljOgogICAgIHRlbXBsYXRlPHR5cGVuYW1lLi4uIEFyZ3M+IHN0YXRpYyBS
ZWY8SFRNTERpYWxvZ0VsZW1lbnQ+IGNyZWF0ZShBcmdzJiYuLi4gYXJncykgeyByZXR1cm4gYWRv
cHRSZWYoKm5ldyBIVE1MRGlhbG9nRWxlbWVudChzdGQ6OmZvcndhcmQ8QXJncz4oYXJncykuLi4p
KTsgfQogICAgIH5IVE1MRGlhbG9nRWxlbWVudCgpOwotICAgIAotICAgIGJvb2wgaXNPcGVuKCkg
Y29uc3Q7CiAKLSAgICBjb25zdCBTdHJpbmcmIHJldHVyblZhbHVlKCk7Ci0gICAgdm9pZCBzZXRS
ZXR1cm5WYWx1ZShTdHJpbmcmJik7CisgICAgYm9vbCBpc09wZW4oKSBjb25zdCB7IHJldHVybiBo
YXNBdHRyaWJ1dGUoSFRNTE5hbWVzOjpvcGVuQXR0cik7IH0KKworICAgIGNvbnN0IFN0cmluZyYg
cmV0dXJuVmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3JldHVyblZhbHVlOyB9CisgICAgdm9pZCBz
ZXRSZXR1cm5WYWx1ZShTdHJpbmcmJiB2YWx1ZSkgeyBtX3JldHVyblZhbHVlID0gV1RGTW92ZSh2
YWx1ZSk7IH0KIAogICAgIHZvaWQgc2hvdygpOwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IHNob3dN
b2RhbCgpOwpAQCAtNDksMTYgKzQ5LDEzIEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlzcGF0Y2hQ
ZW5kaW5nRXZlbnQoRGlhbG9nRXZlbnRTZW5kZXIqKTsKIAotICAgIGJvb2wgaXNNb2RhbCgpIGNv
bnN0OworICAgIGJvb2wgaXNNb2RhbCgpIGNvbnN0IHsgcmV0dXJuIG1faXNNb2RhbDsgfTsKIAog
cHJpdmF0ZToKICAgICBIVE1MRGlhbG9nRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9j
dW1lbnQmKTsKIAotICAgIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYs
IGNvbnN0IEF0b21TdHJpbmcmKSBmaW5hbDsKLQogICAgIFN0cmluZyBtX3JldHVyblZhbHVlOwog
ICAgIGJvb2wgbV9pc01vZGFsIHsgZmFsc2UgfTsKLSAgICBib29sIG1faXNPcGVuIHsgZmFsc2Ug
fTsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2MvQ2hhbmdl
TG9nCmluZGV4IGQ0Y2JiYmYxYzkxZmZlNjZmMDQxNjBhNjEzMjJlZmZkMzZhNjE5NzEuLmViNDA5
MTIxMTFiZDRkNzI5NjIxMGNmZjg2YTgwNTVkZTk4OWUzNmYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2ltcG9ydGVkL3czYy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDIxLTA3LTE1ICBUaW0gTmd1eWVuICA8bnRp
bUBhcHBsZS5jb20+CisKKyAgICAgICAgPGRpYWxvZz4gZWxlbWVudDogZG8gbm90IHBlcmZvcm0g
Y2xvc2UoKSBtZXRob2Qgc3RlcHMgd2hlbiByZW1vdmluZyBvcGVuIGF0dHJpYnV0ZS4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNzg3MgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IHdlYi1wbGF0
Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9pbnRlcmFjdGl2ZS1lbGVtZW50cy90aGUtZGlhbG9n
LWVsZW1lbnQvZGlhbG9nLW9wZW4uaHRtbAorCisgICAgICAgIFRoZSBjbG9zZSBmdW5jdGlvbiBu
b3cgZm9sbG93cyB0aGUgc3RlcHMgYXQ6IGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVs
dGlwYWdlL2ludGVyYWN0aXZlLWVsZW1lbnRzLmh0bWwjY2xvc2UtdGhlLWRpYWxvZworCisgICAg
ICAgICogd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2ludGVyYWN0aXZlLWVsZW1l
bnRzL3RoZS1kaWFsb2ctZWxlbWVudC9kaWFsb2ctb3Blbi1leHBlY3RlZC50eHQ6CisKIDIwMjEt
MDctMTUgIFRpbSBOZ3V5ZW4gIDxudGltQGFwcGxlLmNvbT4KIAogICAgICAgICBSZS1pbXBvcnQg
aHRtbC9zZW1hbnRpY3MvaW50ZXJhY3RpdmUtZWxlbWVudHMvdGhlLWRpYWxvZy1lbGVtZW50IFdQ
VApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9odG1sL3NlbWFudGljcy9pbnRlcmFjdGl2ZS1lbGVtZW50cy90aGUtZGlhbG9nLWVsZW1lbnQv
ZGlhbG9nLW9wZW4tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1w
bGF0Zm9ybS10ZXN0cy9odG1sL3NlbWFudGljcy9pbnRlcmFjdGl2ZS1lbGVtZW50cy90aGUtZGlh
bG9nLWVsZW1lbnQvZGlhbG9nLW9wZW4tZXhwZWN0ZWQudHh0CmluZGV4IDlhN2I4YjNiOWEzOGU2
MWY3ZjY0ZGMxY2E1ODc4MzRjMWEzYTQxZjkuLjg2ZDlmZDI2MzQzOTc3NjE4NTI4NWE2NjVhZjM1
ZjUxMWE0MmM5ZGIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxh
dGZvcm0tdGVzdHMvaHRtbC9zZW1hbnRpY3MvaW50ZXJhY3RpdmUtZWxlbWVudHMvdGhlLWRpYWxv
Zy1lbGVtZW50L2RpYWxvZy1vcGVuLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvc2VtYW50aWNzL2ludGVyYWN0aXZlLWVs
ZW1lbnRzL3RoZS1kaWFsb2ctZWxlbWVudC9kaWFsb2ctb3Blbi1leHBlY3RlZC50eHQKQEAgLTQs
NSArNCw1IEBAIE9LCiAKIFBBU1MgT24gZ2V0dGluZywgdGhlIElETCBvcGVuIGF0dHJpYnV0ZSBt
dXN0IHJldHVybiB0cnVlIGlmIHRoZSBjb250ZW50IG9wZW4gYXR0cmlidXRlIGlzIHNldCwgYW5k
IGZhbHNlIGlmIGl0IGlzIGFic2VudC4KIFBBU1MgT24gc2V0dGluZywgdGhlIGNvbnRlbnQgb3Bl
biBhdHRyaWJ1dGUgbXVzdCBiZSByZW1vdmVkIGlmIHRoZSBJREwgb3BlbiBhdHRyaWJ1dGUgaXMg
c2V0IHRvIGZhbHNlLCBhbmQgbXVzdCBiZSBwcmVzZW50IGlmIHRoZSBJREwgb3BlbiBhdHRyaWJ1
dGUgaXMgc2V0IHRvIHRydWUuCi1GQUlMIE9uIHNldHRpbmcgaXQgdG8gZmFsc2UsIHRoZSBjbG9z
ZSBldmVudCBzaG91bGQgbm90IGJlIGZpcmVkIGFzc2VydF91bnJlYWNoZWQ6IGNsb3NlIGV2ZW50
IHNob3VsZCBub3QgYmUgZmlyZWQgd2hlbiBqdXN0IHNldHRpbmcgdGhlIG9wZW4gYXR0cmlidXRl
IFJlYWNoZWQgdW5yZWFjaGFibGUgY29kZQorUEFTUyBPbiBzZXR0aW5nIGl0IHRvIGZhbHNlLCB0
aGUgY2xvc2UgZXZlbnQgc2hvdWxkIG5vdCBiZSBmaXJlZAogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>