<?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>225881</bug_id>
          
          <creation_ts>2021-05-17 12:59:11 -0700</creation_ts>
          <short_desc>Make sure SQLiteStatement objects get destroyed before the database is closed</short_desc>
          <delta_ts>2021-05-18 08:36:22 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>achristensen</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>sam</cc>
    
    <cc>sihui_liu</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1760845</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-05-17 12:59:11 -0700</bug_when>
    <thetext>Make sure SQLiteStatement objects get destroyed before the database is closed. There are 2 issues with destroying a SQLiteStatement after a database is closed:
1. The underlying call to close the sqlite database will fail if the database still has statements and we will leak the database.
2. SQLiteStatement has a reference to the database so it cannot outlive the SQLiteDatabase.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760864</commentid>
    <comment_count>1</comment_count>
      <attachid>428862</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-05-17 13:47:35 -0700</bug_when>
    <thetext>Created attachment 428862
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761023</commentid>
    <comment_count>2</comment_count>
      <attachid>428910</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-05-17 20:58:58 -0700</bug_when>
    <thetext>Created attachment 428910
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761044</commentid>
    <comment_count>3</comment_count>
      <attachid>428910</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2021-05-17 23:07:01 -0700</bug_when>
    <thetext>Comment on attachment 428910
Patch

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

&gt; Source/WebCore/platform/sql/SQLiteDatabase.cpp:225
&gt; +        ASSERT_WITH_MESSAGE(!m_statementCount, &quot;All SQLiteTransaction objects should be destroyed before closing the database&quot;);

&quot;should&quot; -&gt; &quot;must&quot;

&gt; Source/WebCore/platform/sql/SQLiteDatabase.cpp:727
&gt; +void SQLiteDatabase::incrementStatementCount()
&gt; +{
&gt; +#if ASSERT_ENABLED
&gt; +    ++m_statementCount;
&gt; +#endif
&gt; +}
&gt; +
&gt; +void SQLiteDatabase::decrementStatementCount()
&gt; +{
&gt; +#if ASSERT_ENABLED
&gt; +    ASSERT(m_statementCount);
&gt; +    --m_statementCount;
&gt; +#endif
&gt; +}

When asserts are disabled you’d want this empty function inlined. Can we put these in the header?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761145</commentid>
    <comment_count>4</comment_count>
      <attachid>428935</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2021-05-18 07:37:07 -0700</bug_when>
    <thetext>Created attachment 428935
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761161</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-18 08:35:10 -0700</bug_when>
    <thetext>Committed r277653 (237859@main): &lt;https://commits.webkit.org/237859@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 428935.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1761162</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-05-18 08:36:22 -0700</bug_when>
    <thetext>&lt;rdar://problem/78156408&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428862</attachid>
            <date>2021-05-17 13:47:35 -0700</date>
            <delta_ts>2021-05-17 20:58:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225881-20210517134734.patch</filename>
            <type>text/plain</type>
            <size>7923</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NjAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMmYwMmVjZjYzYWJkMmJj
NzgwOTVkZTQ5MDQ5MDVkOWI4MGQwYjk0OC4uMTY2NGNiMmUxNzQ4MzQ4MTdmN2YwNjIxMTE3OWVh
ODNjODI4MmRhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIxLTA1LTE3ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBzdXJlIFNRTGl0ZVN0
YXRlbWVudCBvYmplY3RzIGdldCBkZXN0cm95ZWQgYmVmb3JlIHRoZSBkYXRhYmFzZSBpcyBjbG9z
ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTg4
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1ha2Ug
c3VyZSBTUUxpdGVTdGF0ZW1lbnQgb2JqZWN0cyBnZXQgZGVzdHJveWVkIGJlZm9yZSB0aGUgZGF0
YWJhc2UgaXMgY2xvc2VkLiBUaGVyZSBhcmUgMiBpc3N1ZXMKKyAgICAgICAgd2l0aCBkZXN0cm95
aW5nIGEgU1FMaXRlU3RhdGVtZW50IGFmdGVyIGEgZGF0YWJhc2UgaXMgY2xvc2VkOgorICAgICAg
ICAxLiBUaGUgdW5kZXJseWluZyBjYWxsIHRvIGNsb3NlIHRoZSBzcWxpdGUgZGF0YWJhc2Ugd2ls
bCBmYWlsIGlmIHRoZSBkYXRhYmFzZSBzdGlsbCBoYXMgc3RhdGVtZW50cworICAgICAgICAgICBh
bmQgd2Ugd2lsbCBsZWFrIHRoZSBkYXRhYmFzZS4KKyAgICAgICAgMi4gU1FMaXRlU3RhdGVtZW50
IGhhcyBhIHJlZmVyZW5jZSB0byB0aGUgZGF0YWJhc2Ugc28gaXQgY2Fubm90IG91dGxpdmUgdGhl
IFNRTGl0ZURhdGFiYXNlLgorCisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFz
ZVRyYWNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGF0YWJhc2VUcmFja2VyOjpkZWxldGVP
cmlnaW4pOgorICAgICAgICAqIHBsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTUUxpdGVEYXRhYmFzZTo6Y2xvc2UpOgorICAgICAgICAoV2ViQ29yZTo6
U1FMaXRlRGF0YWJhc2U6OmluY3JlbWVudFN0YXRlbWVudENvdW50KToKKyAgICAgICAgKFdlYkNv
cmU6OlNRTGl0ZURhdGFiYXNlOjpkZWNyZW1lbnRTdGF0ZW1lbnRDb3VudCk6CisgICAgICAgICog
cGxhdGZvcm0vc3FsL1NRTGl0ZURhdGFiYXNlLmg6CisgICAgICAgICogcGxhdGZvcm0vc3FsL1NR
TGl0ZVN0YXRlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQ6OlNR
TGl0ZVN0YXRlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQ6On5TUUxp
dGVTdGF0ZW1lbnQpOgorCiAyMDIxLTA1LTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5j
b20+CiAKICAgICAgICAgQXZvaWQgbW9yZSBTdHJpbmcgY3JlYXRpb25zIHdoZW4gcHJlcGFyaW5n
IFNRTGl0ZSBzdGF0ZW1lbnRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmRhdGFiYXNlL0RhdGFiYXNlVHJhY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmRhdGFiYXNlL0RhdGFiYXNlVHJhY2tlci5jcHAKaW5kZXggZjY4NGYzYTFhMTI1MmZjNDUzZDNh
Njg2NTkwZTQ1ZWY1YTkxYzZkZS4uM2RhZWYxZmFkNDJhNWFkNGM3NjI2YTcwNzE0MWZhNDIxYmYx
OTM4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRh
YmFzZVRyYWNrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2Uv
RGF0YWJhc2VUcmFja2VyLmNwcApAQCAtODgzLDMwICs4ODMsMzIgQEAgYm9vbCBEYXRhYmFzZVRy
YWNrZXI6OmRlbGV0ZU9yaWdpbihjb25zdCBTZWN1cml0eU9yaWdpbkRhdGEmIG9yaWdpbiwgRGVs
ZXRpb25Nb2QKICAgICAgICAgU1FMaXRlVHJhbnNhY3Rpb24gdHJhbnNhY3Rpb24obV9kYXRhYmFz
ZSk7CiAgICAgICAgIHRyYW5zYWN0aW9uLmJlZ2luKCk7CiAKLSAgICAgICAgYXV0byBzdGF0ZW1l
bnQgPSBtX2RhdGFiYXNlLnByZXBhcmVTdGF0ZW1lbnQoIkRFTEVURSBGUk9NIERhdGFiYXNlcyBX
SEVSRSBvcmlnaW49PyJfcyk7Ci0gICAgICAgIGlmICghc3RhdGVtZW50KSB7Ci0gICAgICAgICAg
ICBMT0dfRVJST1IoIlVuYWJsZSB0byBwcmVwYXJlIGRlbGV0aW9uIG9mIGRhdGFiYXNlcyBmcm9t
IG9yaWdpbiAlcyBmcm9tIHRyYWNrZXIiLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkudXRm
OCgpLmRhdGEoKSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KKyAgICAg
ICAgeworICAgICAgICAgICAgYXV0byBzdGF0ZW1lbnQgPSBtX2RhdGFiYXNlLnByZXBhcmVTdGF0
ZW1lbnQoIkRFTEVURSBGUk9NIERhdGFiYXNlcyBXSEVSRSBvcmlnaW49PyJfcyk7CisgICAgICAg
ICAgICBpZiAoIXN0YXRlbWVudCkgeworICAgICAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxl
IHRvIHByZXBhcmUgZGVsZXRpb24gb2YgZGF0YWJhc2VzIGZyb20gb3JpZ2luICVzIGZyb20gdHJh
Y2tlciIsIG9yaWdpbi5kYXRhYmFzZUlkZW50aWZpZXIoKS51dGY4KCkuZGF0YSgpKTsKKyAgICAg
ICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICB9CiAKLSAgICAgICAgc3RhdGVt
ZW50LT5iaW5kVGV4dCgxLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkpOworICAgICAgICAg
ICAgc3RhdGVtZW50LT5iaW5kVGV4dCgxLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkpOwog
Ci0gICAgICAgIGlmICghc3RhdGVtZW50LT5leGVjdXRlQ29tbWFuZCgpKSB7Ci0gICAgICAgICAg
ICBMT0dfRVJST1IoIlVuYWJsZSB0byBleGVjdXRlIGRlbGV0aW9uIG9mIGRhdGFiYXNlcyBmcm9t
IG9yaWdpbiAlcyBmcm9tIHRyYWNrZXIiLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkudXRm
OCgpLmRhdGEoKSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KKyAgICAg
ICAgICAgIGlmICghc3RhdGVtZW50LT5leGVjdXRlQ29tbWFuZCgpKSB7CisgICAgICAgICAgICAg
ICAgTE9HX0VSUk9SKCJVbmFibGUgdG8gZXhlY3V0ZSBkZWxldGlvbiBvZiBkYXRhYmFzZXMgZnJv
bSBvcmlnaW4gJXMgZnJvbSB0cmFja2VyIiwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpLnV0
ZjgoKS5kYXRhKCkpOworICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAg
IH0KIAotICAgICAgICBhdXRvIG9yaWdpblN0YXRlbWVudCA9IG1fZGF0YWJhc2UucHJlcGFyZVN0
YXRlbWVudCgiREVMRVRFIEZST00gT3JpZ2lucyBXSEVSRSBvcmlnaW49PyJfcyk7Ci0gICAgICAg
IGlmICghb3JpZ2luU3RhdGVtZW50KSB7Ci0gICAgICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0
byBwcmVwYXJlIGRlbGV0aW9uIG9mIG9yaWdpbiAlcyBmcm9tIHRyYWNrZXIiLCBvcmlnaW4uZGF0
YWJhc2VJZGVudGlmaWVyKCkudXRmOCgpLmRhdGEoKSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFs
c2U7Ci0gICAgICAgIH0KKyAgICAgICAgICAgIGF1dG8gb3JpZ2luU3RhdGVtZW50ID0gbV9kYXRh
YmFzZS5wcmVwYXJlU3RhdGVtZW50KCJERUxFVEUgRlJPTSBPcmlnaW5zIFdIRVJFIG9yaWdpbj0/
Il9zKTsKKyAgICAgICAgICAgIGlmICghb3JpZ2luU3RhdGVtZW50KSB7CisgICAgICAgICAgICAg
ICAgTE9HX0VSUk9SKCJVbmFibGUgdG8gcHJlcGFyZSBkZWxldGlvbiBvZiBvcmlnaW4gJXMgZnJv
bSB0cmFja2VyIiwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpLnV0ZjgoKS5kYXRhKCkpOwor
ICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIH0KIAotICAgICAgICBv
cmlnaW5TdGF0ZW1lbnQtPmJpbmRUZXh0KDEsIG9yaWdpbi5kYXRhYmFzZUlkZW50aWZpZXIoKSk7
CisgICAgICAgICAgICBvcmlnaW5TdGF0ZW1lbnQtPmJpbmRUZXh0KDEsIG9yaWdpbi5kYXRhYmFz
ZUlkZW50aWZpZXIoKSk7CiAKLSAgICAgICAgaWYgKCFvcmlnaW5TdGF0ZW1lbnQtPmV4ZWN1dGVD
b21tYW5kKCkpIHsKLSAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIGV4ZWN1dGUgZGVs
ZXRpb24gb2YgZGF0YWJhc2VzIGZyb20gb3JpZ2luICVzIGZyb20gdHJhY2tlciIsIG9yaWdpbi5k
YXRhYmFzZUlkZW50aWZpZXIoKS51dGY4KCkuZGF0YSgpKTsKLSAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICAgICAgICAgIGlmICghb3JpZ2luU3RhdGVtZW50LT5leGVjdXRlQ29tbWFuZCgp
KSB7CisgICAgICAgICAgICAgICAgTE9HX0VSUk9SKCJVbmFibGUgdG8gZXhlY3V0ZSBkZWxldGlv
biBvZiBkYXRhYmFzZXMgZnJvbSBvcmlnaW4gJXMgZnJvbSB0cmFja2VyIiwgb3JpZ2luLmRhdGFi
YXNlSWRlbnRpZmllcigpLnV0ZjgoKS5kYXRhKCkpOworICAgICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfQogCiAgICAgICAgIHRyYW5zYWN0aW9uLmNv
bW1pdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3FsL1NRTGl0ZURh
dGFiYXNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5j
cHAKaW5kZXggMjAyNmZhMjMxMWE3ZTFhYzcwZmU3NjNjOTgyMzQ4YTY4NjZkMzUxNS4uNTBkZTU1
MmVmYmRjYmE1YmUzZDc5YWNhYTk0YWM0ODg5N2UzMTgyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vc3FsL1NRTGl0ZURhdGFiYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9zcWwvU1FMaXRlRGF0YWJhc2UuY3BwCkBAIC0yMjIsNiArMjIyLDggQEAgdm9p
ZCBTUUxpdGVEYXRhYmFzZTo6dXNlV0FMSm91cm5hbE1vZGUoKQogdm9pZCBTUUxpdGVEYXRhYmFz
ZTo6Y2xvc2UoKQogewogICAgIGlmIChtX2RiKSB7CisgICAgICAgIEFTU0VSVF9XSVRIX01FU1NB
R0UoIW1fc3RhdGVtZW50Q291bnQsICJBbGwgU1FMaXRlVHJhbnNhY3Rpb24gb2JqZWN0cyBzaG91
bGQgYmUgZGVzdHJveWVkIGJlZm9yZSBjbG9zaW5nIHRoZSBkYXRhYmFzZSIpOworCiAgICAgICAg
IC8vIEZJWE1FOiBUaGlzIGlzIGJlaW5nIGNhbGxlZCBvbiB0aGUgbWFpbiB0aHJlYWQgZHVyaW5n
IEpTIEdDLiA8cmRhcjovL3Byb2JsZW0vNTczOTgxOD4KICAgICAgICAgLy8gQVNTRVJUKG1fb3Bl
bmluZ1RocmVhZCA9PSAmVGhyZWFkOjpjdXJyZW50KCkpOwogICAgICAgICBzcWxpdGUzKiBkYiA9
IG1fZGI7CkBAIC03MTcsNCArNzE5LDE5IEBAIEV4cGVjdGVkPFVuaXF1ZVJlZjxTUUxpdGVTdGF0
ZW1lbnQ+LCBpbnQ+IFNRTGl0ZURhdGFiYXNlOjpwcmVwYXJlSGVhcFN0YXRlbWVudChBCiAgICAg
cmV0dXJuIFVuaXF1ZVJlZjxTUUxpdGVTdGF0ZW1lbnQ+KCpuZXcgU1FMaXRlU3RhdGVtZW50KCp0
aGlzLCBzcWxTdGF0ZW1lbnQudmFsdWUoKSkpOwogfQogCit2b2lkIFNRTGl0ZURhdGFiYXNlOjpp
bmNyZW1lbnRTdGF0ZW1lbnRDb3VudCgpCit7CisjaWYgQVNTRVJUX0VOQUJMRUQKKyAgICArK21f
c3RhdGVtZW50Q291bnQ7CisjZW5kaWYKK30KKwordm9pZCBTUUxpdGVEYXRhYmFzZTo6ZGVjcmVt
ZW50U3RhdGVtZW50Q291bnQoKQoreworI2lmIEFTU0VSVF9FTkFCTEVECisgICAgQVNTRVJUKG1f
c3RhdGVtZW50Q291bnQpOworICAgIC0tbV9zdGF0ZW1lbnRDb3VudDsKKyNlbmRpZgorfQorCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9zcWwvU1FMaXRlRGF0YWJhc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxp
dGVEYXRhYmFzZS5oCmluZGV4IDA5ZjU5MWUxYWU0NDU1ZTdlZDkzZDUwZDk1ODdjZTU5NDRjNGJl
MDAuLjVjYmYxNDY2NzljODVjM2MxZGIwMTg2MmNkMTc3MWIyOTJhMzdiNGIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5oCkBAIC0zMiw2ICszMiw3IEBA
CiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5j
bHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgorI2luY2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAjaW5jbHVk
ZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgog
CkBAIC00Nyw3ICs0OCw3IEBAIGNsYXNzIERhdGFiYXNlQXV0aG9yaXplcjsKIGNsYXNzIFNRTGl0
ZVN0YXRlbWVudDsKIGNsYXNzIFNRTGl0ZVRyYW5zYWN0aW9uOwogCi1jbGFzcyBTUUxpdGVEYXRh
YmFzZSB7CitjbGFzcyBTUUxpdGVEYXRhYmFzZSA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxTUUxp
dGVEYXRhYmFzZT4gewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKFNRTGl0ZURhdGFiYXNlKTsKICAgICBmcmllbmQgY2xhc3MgU1FMaXRlVHJh
bnNhY3Rpb247CkBAIC0xNTUsNiArMTU2LDkgQEAgcHVibGljOgogCiAgICAgV0VCQ09SRV9FWFBP
UlQgdm9pZCByZWxlYXNlTWVtb3J5KCk7CiAKKyAgICB2b2lkIGluY3JlbWVudFN0YXRlbWVudENv
dW50KCk7CisgICAgdm9pZCBkZWNyZW1lbnRTdGF0ZW1lbnRDb3VudCgpOworCiBwcml2YXRlOgog
ICAgIHN0YXRpYyBpbnQgYXV0aG9yaXplckZ1bmN0aW9uKHZvaWQqLCBpbnQsIGNvbnN0IGNoYXIq
LCBjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIGNvbnN0IGNoYXIqKTsKIApAQCAtMTcxLDYgKzE3
NSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX3RyYW5zYWN0aW9uSW5Qcm9ncmVzcyB7IGZhbHNl
IH07CiAjaWYgQVNTRVJUX0VOQUJMRUQKICAgICBib29sIG1fc2hhcmFibGUgeyBmYWxzZSB9Owor
ICAgIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBtX3N0YXRlbWVudENvdW50IHsgMCB9OwogI2VuZGlm
CiAKICAgICBib29sIG1fdXNlV0FMIHsgZmFsc2UgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVTdGF0ZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vc3FsL1NRTGl0ZVN0YXRlbWVudC5jcHAKaW5kZXggNDhmOWFlZTJkNzFkOTFmYjQ1NzAy
MjJkNGU1YjA3ODhhMGJlMTVkZi4uMjZjMjRjMzdkOWQwMGUwN2I4ODc4OTljYzM0NzY3YWM4NGEy
ZWIzNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3FsL1NRTGl0ZVN0YXRl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3FsL1NRTGl0ZVN0YXRlbWVu
dC5jcHAKQEAgLTQ2LDE3ICs0NiwyMCBAQCBTUUxpdGVTdGF0ZW1lbnQ6OlNRTGl0ZVN0YXRlbWVu
dChTUUxpdGVEYXRhYmFzZSYgZGIsIHNxbGl0ZTNfc3RtdCogc3RhdGVtZW50KQogICAgICwgbV9z
dGF0ZW1lbnQoc3RhdGVtZW50KQogewogICAgIEFTU0VSVChzdGF0ZW1lbnQpOworICAgIG1fZGF0
YWJhc2UuaW5jcmVtZW50U3RhdGVtZW50Q291bnQoKTsKIH0KIAogU1FMaXRlU3RhdGVtZW50OjpT
UUxpdGVTdGF0ZW1lbnQoU1FMaXRlU3RhdGVtZW50JiYgb3RoZXIpCiAgICAgOiBtX2RhdGFiYXNl
KG90aGVyLmRhdGFiYXNlKCkpCiAgICAgLCBtX3N0YXRlbWVudChzdGQ6OmV4Y2hhbmdlKG90aGVy
Lm1fc3RhdGVtZW50LCBudWxscHRyKSkKIHsKKyAgICBtX2RhdGFiYXNlLmluY3JlbWVudFN0YXRl
bWVudENvdW50KCk7CiB9CiAKIFNRTGl0ZVN0YXRlbWVudDo6flNRTGl0ZVN0YXRlbWVudCgpCiB7
CiAgICAgc3FsaXRlM19maW5hbGl6ZShtX3N0YXRlbWVudCk7CisgICAgbV9kYXRhYmFzZS5kZWNy
ZW1lbnRTdGF0ZW1lbnRDb3VudCgpOwogfQogCiBpbnQgU1FMaXRlU3RhdGVtZW50OjpzdGVwKCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428910</attachid>
            <date>2021-05-17 20:58:58 -0700</date>
            <delta_ts>2021-05-18 07:37:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225881-20210517205858.patch</filename>
            <type>text/plain</type>
            <size>9369</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NjM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjE1NDQwNmMyMGU5NTIy
MzhjYzE1NTA1ODE2YTZhZGUzOGMyZDQ4Ni4uMzljNDAzODU3NDBlZmI4YTQ4MjRlYWI3ZjhmNjE5
NGEyYTgwNGUzNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIxLTA1LTE3ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBzdXJlIFNRTGl0ZVN0
YXRlbWVudCBvYmplY3RzIGdldCBkZXN0cm95ZWQgYmVmb3JlIHRoZSBkYXRhYmFzZSBpcyBjbG9z
ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTg4
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1ha2Ug
c3VyZSBTUUxpdGVTdGF0ZW1lbnQgb2JqZWN0cyBnZXQgZGVzdHJveWVkIGJlZm9yZSB0aGUgZGF0
YWJhc2UgaXMgY2xvc2VkLiBUaGVyZSBhcmUgMiBpc3N1ZXMKKyAgICAgICAgd2l0aCBkZXN0cm95
aW5nIGEgU1FMaXRlU3RhdGVtZW50IGFmdGVyIGEgZGF0YWJhc2UgaXMgY2xvc2VkOgorICAgICAg
ICAxLiBUaGUgdW5kZXJseWluZyBjYWxsIHRvIGNsb3NlIHRoZSBzcWxpdGUgZGF0YWJhc2Ugd2ls
bCBmYWlsIGlmIHRoZSBkYXRhYmFzZSBzdGlsbCBoYXMgc3RhdGVtZW50cworICAgICAgICAgICBh
bmQgd2Ugd2lsbCBsZWFrIHRoZSBkYXRhYmFzZS4KKyAgICAgICAgMi4gU1FMaXRlU3RhdGVtZW50
IGhhcyBhIHJlZmVyZW5jZSB0byB0aGUgZGF0YWJhc2Ugc28gaXQgY2Fubm90IG91dGxpdmUgdGhl
IFNRTGl0ZURhdGFiYXNlLgorCisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFz
ZVRyYWNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGF0YWJhc2VUcmFja2VyOjpkZWxldGVP
cmlnaW4pOgorICAgICAgICAqIHBsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpTUUxpdGVEYXRhYmFzZTo6Y2xvc2UpOgorICAgICAgICAoV2ViQ29yZTo6
U1FMaXRlRGF0YWJhc2U6OmluY3JlbWVudFN0YXRlbWVudENvdW50KToKKyAgICAgICAgKFdlYkNv
cmU6OlNRTGl0ZURhdGFiYXNlOjpkZWNyZW1lbnRTdGF0ZW1lbnRDb3VudCk6CisgICAgICAgICog
cGxhdGZvcm0vc3FsL1NRTGl0ZURhdGFiYXNlLmg6CisgICAgICAgICogcGxhdGZvcm0vc3FsL1NR
TGl0ZVN0YXRlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQ6OlNR
TGl0ZVN0YXRlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQ6On5TUUxp
dGVTdGF0ZW1lbnQpOgorCiAyMDIxLTA1LTE3ICBTaWh1aSBMaXUgIDxzaWh1aV9saXVAYXBwbGUu
Y29tPgogCiAgICAgICAgIFJlbW92ZSBTUUxpdGVTdGF0ZW1lbnQ6OmlzQ29sdW1uTnVsbCBhbmQg
aXRzIHVzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9E
YXRhYmFzZVRyYWNrZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9E
YXRhYmFzZVRyYWNrZXIuY3BwCmluZGV4IGY2ODRmM2ExYTEyNTJmYzQ1M2QzYTY4NjU5MGU0NWVm
NWE5MWM2ZGUuLjNkYWVmMWZhZDQyYTVhZDRjNzYyNmE3MDcxNDFmYTQyMWJmMTkzODggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VUcmFja2Vy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0RhdGFiYXNlVHJh
Y2tlci5jcHAKQEAgLTg4MywzMCArODgzLDMyIEBAIGJvb2wgRGF0YWJhc2VUcmFja2VyOjpkZWxl
dGVPcmlnaW4oY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBvcmlnaW4sIERlbGV0aW9uTW9kCiAg
ICAgICAgIFNRTGl0ZVRyYW5zYWN0aW9uIHRyYW5zYWN0aW9uKG1fZGF0YWJhc2UpOwogICAgICAg
ICB0cmFuc2FjdGlvbi5iZWdpbigpOwogCi0gICAgICAgIGF1dG8gc3RhdGVtZW50ID0gbV9kYXRh
YmFzZS5wcmVwYXJlU3RhdGVtZW50KCJERUxFVEUgRlJPTSBEYXRhYmFzZXMgV0hFUkUgb3JpZ2lu
PT8iX3MpOwotICAgICAgICBpZiAoIXN0YXRlbWVudCkgewotICAgICAgICAgICAgTE9HX0VSUk9S
KCJVbmFibGUgdG8gcHJlcGFyZSBkZWxldGlvbiBvZiBkYXRhYmFzZXMgZnJvbSBvcmlnaW4gJXMg
ZnJvbSB0cmFja2VyIiwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpLnV0ZjgoKS5kYXRhKCkp
OwotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9CisgICAgICAgIHsKKyAgICAg
ICAgICAgIGF1dG8gc3RhdGVtZW50ID0gbV9kYXRhYmFzZS5wcmVwYXJlU3RhdGVtZW50KCJERUxF
VEUgRlJPTSBEYXRhYmFzZXMgV0hFUkUgb3JpZ2luPT8iX3MpOworICAgICAgICAgICAgaWYgKCFz
dGF0ZW1lbnQpIHsKKyAgICAgICAgICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0byBwcmVwYXJl
IGRlbGV0aW9uIG9mIGRhdGFiYXNlcyBmcm9tIG9yaWdpbiAlcyBmcm9tIHRyYWNrZXIiLCBvcmln
aW4uZGF0YWJhc2VJZGVudGlmaWVyKCkudXRmOCgpLmRhdGEoKSk7CisgICAgICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOworICAgICAgICAgICAgfQogCi0gICAgICAgIHN0YXRlbWVudC0+YmluZFRl
eHQoMSwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpKTsKKyAgICAgICAgICAgIHN0YXRlbWVu
dC0+YmluZFRleHQoMSwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpKTsKIAotICAgICAgICBp
ZiAoIXN0YXRlbWVudC0+ZXhlY3V0ZUNvbW1hbmQoKSkgewotICAgICAgICAgICAgTE9HX0VSUk9S
KCJVbmFibGUgdG8gZXhlY3V0ZSBkZWxldGlvbiBvZiBkYXRhYmFzZXMgZnJvbSBvcmlnaW4gJXMg
ZnJvbSB0cmFja2VyIiwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpLnV0ZjgoKS5kYXRhKCkp
OwotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9CisgICAgICAgICAgICBpZiAo
IXN0YXRlbWVudC0+ZXhlY3V0ZUNvbW1hbmQoKSkgeworICAgICAgICAgICAgICAgIExPR19FUlJP
UigiVW5hYmxlIHRvIGV4ZWN1dGUgZGVsZXRpb24gb2YgZGF0YWJhc2VzIGZyb20gb3JpZ2luICVz
IGZyb20gdHJhY2tlciIsIG9yaWdpbi5kYXRhYmFzZUlkZW50aWZpZXIoKS51dGY4KCkuZGF0YSgp
KTsKKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICB9CiAKLSAgICAg
ICAgYXV0byBvcmlnaW5TdGF0ZW1lbnQgPSBtX2RhdGFiYXNlLnByZXBhcmVTdGF0ZW1lbnQoIkRF
TEVURSBGUk9NIE9yaWdpbnMgV0hFUkUgb3JpZ2luPT8iX3MpOwotICAgICAgICBpZiAoIW9yaWdp
blN0YXRlbWVudCkgewotICAgICAgICAgICAgTE9HX0VSUk9SKCJVbmFibGUgdG8gcHJlcGFyZSBk
ZWxldGlvbiBvZiBvcmlnaW4gJXMgZnJvbSB0cmFja2VyIiwgb3JpZ2luLmRhdGFiYXNlSWRlbnRp
ZmllcigpLnV0ZjgoKS5kYXRhKCkpOwotICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAg
ICB9CisgICAgICAgICAgICBhdXRvIG9yaWdpblN0YXRlbWVudCA9IG1fZGF0YWJhc2UucHJlcGFy
ZVN0YXRlbWVudCgiREVMRVRFIEZST00gT3JpZ2lucyBXSEVSRSBvcmlnaW49PyJfcyk7CisgICAg
ICAgICAgICBpZiAoIW9yaWdpblN0YXRlbWVudCkgeworICAgICAgICAgICAgICAgIExPR19FUlJP
UigiVW5hYmxlIHRvIHByZXBhcmUgZGVsZXRpb24gb2Ygb3JpZ2luICVzIGZyb20gdHJhY2tlciIs
IG9yaWdpbi5kYXRhYmFzZUlkZW50aWZpZXIoKS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAg
ICAgICByZXR1cm4gZmFsc2U7CisgICAgICAgICAgICB9CiAKLSAgICAgICAgb3JpZ2luU3RhdGVt
ZW50LT5iaW5kVGV4dCgxLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkpOworICAgICAgICAg
ICAgb3JpZ2luU3RhdGVtZW50LT5iaW5kVGV4dCgxLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVy
KCkpOwogCi0gICAgICAgIGlmICghb3JpZ2luU3RhdGVtZW50LT5leGVjdXRlQ29tbWFuZCgpKSB7
Ci0gICAgICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0byBleGVjdXRlIGRlbGV0aW9uIG9mIGRh
dGFiYXNlcyBmcm9tIG9yaWdpbiAlcyBmcm9tIHRyYWNrZXIiLCBvcmlnaW4uZGF0YWJhc2VJZGVu
dGlmaWVyKCkudXRmOCgpLmRhdGEoKSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
ICAgICAgICBpZiAoIW9yaWdpblN0YXRlbWVudC0+ZXhlY3V0ZUNvbW1hbmQoKSkgeworICAgICAg
ICAgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIGV4ZWN1dGUgZGVsZXRpb24gb2YgZGF0YWJh
c2VzIGZyb20gb3JpZ2luICVzIGZyb20gdHJhY2tlciIsIG9yaWdpbi5kYXRhYmFzZUlkZW50aWZp
ZXIoKS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
ICAgICAgICB9CiAgICAgICAgIH0KIAogICAgICAgICB0cmFuc2FjdGlvbi5jb21taXQoKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcWwvU1FMaXRlRGF0YWJhc2UuY3BwCmluZGV4IGQ0
NTg3NTgwMGU1ZjQyNDhhMWQ2YzcwNWU5ZWU4ZWYwOWQ3ZTdjODMuLmI2ZjExMzBhZWViNzA0NWVh
MjhkNjQ4OWYzN2E4YTU3MDkwMDM0ZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
c3FsL1NRTGl0ZURhdGFiYXNlLmNwcApAQCAtMjIyLDYgKzIyMiw4IEBAIHZvaWQgU1FMaXRlRGF0
YWJhc2U6OnVzZVdBTEpvdXJuYWxNb2RlKCkKIHZvaWQgU1FMaXRlRGF0YWJhc2U6OmNsb3NlKCkK
IHsKICAgICBpZiAobV9kYikgeworICAgICAgICBBU1NFUlRfV0lUSF9NRVNTQUdFKCFtX3N0YXRl
bWVudENvdW50LCAiQWxsIFNRTGl0ZVRyYW5zYWN0aW9uIG9iamVjdHMgc2hvdWxkIGJlIGRlc3Ry
b3llZCBiZWZvcmUgY2xvc2luZyB0aGUgZGF0YWJhc2UiKTsKKwogICAgICAgICAvLyBGSVhNRTog
VGhpcyBpcyBiZWluZyBjYWxsZWQgb24gdGhlIG1haW4gdGhyZWFkIGR1cmluZyBKUyBHQy4gPHJk
YXI6Ly9wcm9ibGVtLzU3Mzk4MTg+CiAgICAgICAgIC8vIEFTU0VSVChtX29wZW5pbmdUaHJlYWQg
PT0gJlRocmVhZDo6Y3VycmVudCgpKTsKICAgICAgICAgc3FsaXRlMyogZGIgPSBtX2RiOwpAQCAt
NzA5LDQgKzcxMSwxOSBAQCBFeHBlY3RlZDxVbmlxdWVSZWY8U1FMaXRlU3RhdGVtZW50PiwgaW50
PiBTUUxpdGVEYXRhYmFzZTo6cHJlcGFyZUhlYXBTdGF0ZW1lbnQoQQogICAgIHJldHVybiBVbmlx
dWVSZWY8U1FMaXRlU3RhdGVtZW50PigqbmV3IFNRTGl0ZVN0YXRlbWVudCgqdGhpcywgc3FsU3Rh
dGVtZW50LnZhbHVlKCkpKTsKIH0KIAordm9pZCBTUUxpdGVEYXRhYmFzZTo6aW5jcmVtZW50U3Rh
dGVtZW50Q291bnQoKQoreworI2lmIEFTU0VSVF9FTkFCTEVECisgICAgKyttX3N0YXRlbWVudENv
dW50OworI2VuZGlmCit9CisKK3ZvaWQgU1FMaXRlRGF0YWJhc2U6OmRlY3JlbWVudFN0YXRlbWVu
dENvdW50KCkKK3sKKyNpZiBBU1NFUlRfRU5BQkxFRAorICAgIEFTU0VSVChtX3N0YXRlbWVudENv
dW50KTsKKyAgICAtLW1fc3RhdGVtZW50Q291bnQ7CisjZW5kaWYKK30KKwogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3FsL1NRTGl0
ZURhdGFiYXNlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcWwvU1FMaXRlRGF0YWJhc2Uu
aAppbmRleCA0MmYyMGZkZWY3MWQ0YmIxY2M1NjNhNDU1MDRkYmEyYmNkNDBhNDQ3Li5jMWJjZjEz
MTc1MzhjNWZlMzA4YTA1OGFjODJlZmVlMjg3N2VkOWM3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9zcWwvU1FMaXRlRGF0YWJhc2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9zcWwvU1FMaXRlRGF0YWJhc2UuaApAQCAtMzIsNiArMzIsNyBAQAogI2luY2x1ZGUg
PHd0Zi9Mb2NrLmg+CiAjaW5jbHVkZSA8d3RmL1RocmVhZGluZy5oPgogI2luY2x1ZGUgPHd0Zi9V
bmlxdWVSZWYuaD4KKyNpbmNsdWRlIDx3dGYvV2Vha1B0ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0
L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNDcsNyAr
NDgsNyBAQCBjbGFzcyBEYXRhYmFzZUF1dGhvcml6ZXI7CiBjbGFzcyBTUUxpdGVTdGF0ZW1lbnQ7
CiBjbGFzcyBTUUxpdGVUcmFuc2FjdGlvbjsKIAotY2xhc3MgU1FMaXRlRGF0YWJhc2UgeworY2xh
c3MgU1FMaXRlRGF0YWJhc2UgOiBwdWJsaWMgQ2FuTWFrZVdlYWtQdHI8U1FMaXRlRGF0YWJhc2U+
IHsKICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJM
RShTUUxpdGVEYXRhYmFzZSk7CiAgICAgZnJpZW5kIGNsYXNzIFNRTGl0ZVRyYW5zYWN0aW9uOwpA
QCAtMTU1LDYgKzE1Niw5IEBAIHB1YmxpYzoKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVs
ZWFzZU1lbW9yeSgpOwogCisgICAgdm9pZCBpbmNyZW1lbnRTdGF0ZW1lbnRDb3VudCgpOworICAg
IHZvaWQgZGVjcmVtZW50U3RhdGVtZW50Q291bnQoKTsKKwogcHJpdmF0ZToKICAgICBzdGF0aWMg
aW50IGF1dGhvcml6ZXJGdW5jdGlvbih2b2lkKiwgaW50LCBjb25zdCBjaGFyKiwgY29uc3QgY2hh
ciosIGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKik7CiAKQEAgLTE3MSw2ICsxNzUsNyBAQCBwcml2
YXRlOgogICAgIGJvb2wgbV90cmFuc2FjdGlvbkluUHJvZ3Jlc3MgeyBmYWxzZSB9OwogI2lmIEFT
U0VSVF9FTkFCTEVECiAgICAgYm9vbCBtX3NoYXJhYmxlIHsgZmFsc2UgfTsKKyAgICBzdGQ6OmF0
b21pYzx1bnNpZ25lZD4gbV9zdGF0ZW1lbnRDb3VudCB7IDAgfTsKICNlbmRpZgogCiAgICAgYm9v
bCBtX3VzZVdBTCB7IGZhbHNlIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9zcWwvU1FMaXRlU3RhdGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9T
UUxpdGVTdGF0ZW1lbnQuY3BwCmluZGV4IDkxNzNmMWQ0OWJhODIxMTdiNTQ5NTIzYjk3NTYzMWQx
OTAxYTAxMmQuLjRjNTdlNjc3MjMxZGVjYTc1NDkxZTZmNDZjMzM2ZDI5MmYwYmM2MDQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVTdGF0ZW1lbnQuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVTdGF0ZW1lbnQuY3BwCkBAIC00
NiwxNyArNDYsMjAgQEAgU1FMaXRlU3RhdGVtZW50OjpTUUxpdGVTdGF0ZW1lbnQoU1FMaXRlRGF0
YWJhc2UmIGRiLCBzcWxpdGUzX3N0bXQqIHN0YXRlbWVudCkKICAgICAsIG1fc3RhdGVtZW50KHN0
YXRlbWVudCkKIHsKICAgICBBU1NFUlQoc3RhdGVtZW50KTsKKyAgICBtX2RhdGFiYXNlLmluY3Jl
bWVudFN0YXRlbWVudENvdW50KCk7CiB9CiAKIFNRTGl0ZVN0YXRlbWVudDo6U1FMaXRlU3RhdGVt
ZW50KFNRTGl0ZVN0YXRlbWVudCYmIG90aGVyKQogICAgIDogbV9kYXRhYmFzZShvdGhlci5kYXRh
YmFzZSgpKQogICAgICwgbV9zdGF0ZW1lbnQoc3RkOjpleGNoYW5nZShvdGhlci5tX3N0YXRlbWVu
dCwgbnVsbHB0cikpCiB7CisgICAgbV9kYXRhYmFzZS5pbmNyZW1lbnRTdGF0ZW1lbnRDb3VudCgp
OwogfQogCiBTUUxpdGVTdGF0ZW1lbnQ6On5TUUxpdGVTdGF0ZW1lbnQoKQogewogICAgIHNxbGl0
ZTNfZmluYWxpemUobV9zdGF0ZW1lbnQpOworICAgIG1fZGF0YWJhc2UuZGVjcmVtZW50U3RhdGVt
ZW50Q291bnQoKTsKIH0KIAogaW50IFNRTGl0ZVN0YXRlbWVudDo6c3RlcCgpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvU3RvcmFnZVRyYWNrZXIuY3BwIGIvU291cmNl
L1dlYktpdExlZ2FjeS9TdG9yYWdlL1N0b3JhZ2VUcmFja2VyLmNwcAppbmRleCA4YjFlMTBiMjRi
OGE0MjdlZDZiMmIxN2I0NzRhMTQyYjFjYzI5NzY0Li5hMTJlZDQ4ZTYzYjdkOWJiM2FlYmQ4YTdm
YjdlZGIxZmRhM2E5ZGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2Uv
U3RvcmFnZVRyYWNrZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvU3RvcmFnZS9TdG9y
YWdlVHJhY2tlci5jcHAKQEAgLTUxOSwxNSArNTE5LDE3IEBAIHZvaWQgU3RvcmFnZVRyYWNrZXI6
OnN5bmNEZWxldGVPcmlnaW4oY29uc3QgU3RyaW5nJiBvcmlnaW5JZGVudGlmaWVyKQogICAgICAg
ICByZXR1cm47CiAgICAgfQogICAgIAotICAgIGF1dG8gZGVsZXRlU3RhdGVtZW50ID0gbV9kYXRh
YmFzZS5wcmVwYXJlU3RhdGVtZW50KCJERUxFVEUgRlJPTSBPcmlnaW5zIHdoZXJlIG9yaWdpbj0/
Il9zKTsKLSAgICBpZiAoIWRlbGV0ZVN0YXRlbWVudCkgewotICAgICAgICBMT0dfRVJST1IoIlVu
YWJsZSB0byBwcmVwYXJlIGRlbGV0aW9uIG9mIG9yaWdpbiAnJXMnIiwgb3JpZ2luSWRlbnRpZmll
ci5hc2NpaSgpLmRhdGEoKSk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0gICAgZGVsZXRlU3Rh
dGVtZW50LT5iaW5kVGV4dCgxLCBvcmlnaW5JZGVudGlmaWVyKTsKLSAgICBpZiAoIWRlbGV0ZVN0
YXRlbWVudC0+ZXhlY3V0ZUNvbW1hbmQoKSkgewotICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0
byBleGVjdXRlIGRlbGV0aW9uIG9mIG9yaWdpbiAnJXMnIiwgb3JpZ2luSWRlbnRpZmllci5hc2Np
aSgpLmRhdGEoKSk7Ci0gICAgICAgIHJldHVybjsKKyAgICB7CisgICAgICAgIGF1dG8gZGVsZXRl
U3RhdGVtZW50ID0gbV9kYXRhYmFzZS5wcmVwYXJlU3RhdGVtZW50KCJERUxFVEUgRlJPTSBPcmln
aW5zIHdoZXJlIG9yaWdpbj0/Il9zKTsKKyAgICAgICAgaWYgKCFkZWxldGVTdGF0ZW1lbnQpIHsK
KyAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIHByZXBhcmUgZGVsZXRpb24gb2Ygb3Jp
Z2luICclcyciLCBvcmlnaW5JZGVudGlmaWVyLmFzY2lpKCkuZGF0YSgpKTsKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBkZWxldGVTdGF0ZW1lbnQtPmJpbmRUZXh0KDEs
IG9yaWdpbklkZW50aWZpZXIpOworICAgICAgICBpZiAoIWRlbGV0ZVN0YXRlbWVudC0+ZXhlY3V0
ZUNvbW1hbmQoKSkgeworICAgICAgICAgICAgTE9HX0VSUk9SKCJVbmFibGUgdG8gZXhlY3V0ZSBk
ZWxldGlvbiBvZiBvcmlnaW4gJyVzJyIsIG9yaWdpbklkZW50aWZpZXIuYXNjaWkoKS5kYXRhKCkp
OworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgfQogCiAgICAgRmlsZVN5c3Rl
bTo6ZGVsZXRlRmlsZShwYXRoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>428935</attachid>
            <date>2021-05-18 07:37:07 -0700</date>
            <delta_ts>2021-05-18 08:35:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-225881-20210518073707.patch</filename>
            <type>text/plain</type>
            <size>9310</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3NjUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODFlOTcyNDJmNDI1NmFj
NDgyOWMyY2I4YmUyYjIwODdlZDczNWZiMC4uZjhiNWExYTZhYWU3ZTY3YTA2NGY2YTQyYjZkZjNl
MjkxN2IzNGM4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIxLTA1LTE4ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgTWFrZSBzdXJlIFNRTGl0ZVN0
YXRlbWVudCBvYmplY3RzIGdldCBkZXN0cm95ZWQgYmVmb3JlIHRoZSBkYXRhYmFzZSBpcyBjbG9z
ZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNTg4
MQorCisgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgorCisgICAgICAgIE1ha2Ugc3Vy
ZSBTUUxpdGVTdGF0ZW1lbnQgb2JqZWN0cyBnZXQgZGVzdHJveWVkIGJlZm9yZSB0aGUgZGF0YWJh
c2UgaXMgY2xvc2VkLiBUaGVyZSBhcmUgMiBpc3N1ZXMKKyAgICAgICAgd2l0aCBkZXN0cm95aW5n
IGEgU1FMaXRlU3RhdGVtZW50IGFmdGVyIGEgZGF0YWJhc2UgaXMgY2xvc2VkOgorICAgICAgICAx
LiBUaGUgdW5kZXJseWluZyBjYWxsIHRvIGNsb3NlIHRoZSBzcWxpdGUgZGF0YWJhc2Ugd2lsbCBm
YWlsIGlmIHRoZSBkYXRhYmFzZSBzdGlsbCBoYXMgc3RhdGVtZW50cworICAgICAgICAgICBhbmQg
d2Ugd2lsbCBsZWFrIHRoZSBkYXRhYmFzZS4KKyAgICAgICAgMi4gU1FMaXRlU3RhdGVtZW50IGhh
cyBhIHJlZmVyZW5jZSB0byB0aGUgZGF0YWJhc2Ugc28gaXQgY2Fubm90IG91dGxpdmUgdGhlIFNR
TGl0ZURhdGFiYXNlLgorCisgICAgICAgICogTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRy
YWNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RGF0YWJhc2VUcmFja2VyOjpkZWxldGVPcmln
aW4pOgorICAgICAgICAqIHBsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTUUxpdGVEYXRhYmFzZTo6Y2xvc2UpOgorICAgICAgICAoV2ViQ29yZTo6U1FM
aXRlRGF0YWJhc2U6OmluY3JlbWVudFN0YXRlbWVudENvdW50KToKKyAgICAgICAgKFdlYkNvcmU6
OlNRTGl0ZURhdGFiYXNlOjpkZWNyZW1lbnRTdGF0ZW1lbnRDb3VudCk6CisgICAgICAgICogcGxh
dGZvcm0vc3FsL1NRTGl0ZURhdGFiYXNlLmg6CisgICAgICAgICogcGxhdGZvcm0vc3FsL1NRTGl0
ZVN0YXRlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQ6OlNRTGl0
ZVN0YXRlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpTUUxpdGVTdGF0ZW1lbnQ6On5TUUxpdGVT
dGF0ZW1lbnQpOgorCiAyMDIxLTA1LTE4ICBQaGlsaXBwZSBOb3JtYW5kICA8cG5vcm1hbmRAaWdh
bGlhLmNvbT4KIAogICAgICAgICBbTWVkaWFTdHJlYW1dW0dTdHJlYW1lcl0gRmxha3kgZmFzdC9t
ZWRpYXN0cmVhbS9NZWRpYVN0cmVhbS12aWRlby1lbGVtZW50LXZpZGVvLXRyYWNrcy1kaXNhYmxl
ZC5odG1sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0Rh
dGFiYXNlVHJhY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmRhdGFiYXNlL0Rh
dGFiYXNlVHJhY2tlci5jcHAKaW5kZXggZjY4NGYzYTFhMTI1MmZjNDUzZDNhNjg2NTkwZTQ1ZWY1
YTkxYzZkZS4uM2RhZWYxZmFkNDJhNWFkNGM3NjI2YTcwNzE0MWZhNDIxYmYxOTM4OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJkYXRhYmFzZS9EYXRhYmFzZVRyYWNrZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZGF0YWJhc2UvRGF0YWJhc2VUcmFj
a2VyLmNwcApAQCAtODgzLDMwICs4ODMsMzIgQEAgYm9vbCBEYXRhYmFzZVRyYWNrZXI6OmRlbGV0
ZU9yaWdpbihjb25zdCBTZWN1cml0eU9yaWdpbkRhdGEmIG9yaWdpbiwgRGVsZXRpb25Nb2QKICAg
ICAgICAgU1FMaXRlVHJhbnNhY3Rpb24gdHJhbnNhY3Rpb24obV9kYXRhYmFzZSk7CiAgICAgICAg
IHRyYW5zYWN0aW9uLmJlZ2luKCk7CiAKLSAgICAgICAgYXV0byBzdGF0ZW1lbnQgPSBtX2RhdGFi
YXNlLnByZXBhcmVTdGF0ZW1lbnQoIkRFTEVURSBGUk9NIERhdGFiYXNlcyBXSEVSRSBvcmlnaW49
PyJfcyk7Ci0gICAgICAgIGlmICghc3RhdGVtZW50KSB7Ci0gICAgICAgICAgICBMT0dfRVJST1Io
IlVuYWJsZSB0byBwcmVwYXJlIGRlbGV0aW9uIG9mIGRhdGFiYXNlcyBmcm9tIG9yaWdpbiAlcyBm
cm9tIHRyYWNrZXIiLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkudXRmOCgpLmRhdGEoKSk7
Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KKyAgICAgICAgeworICAgICAg
ICAgICAgYXV0byBzdGF0ZW1lbnQgPSBtX2RhdGFiYXNlLnByZXBhcmVTdGF0ZW1lbnQoIkRFTEVU
RSBGUk9NIERhdGFiYXNlcyBXSEVSRSBvcmlnaW49PyJfcyk7CisgICAgICAgICAgICBpZiAoIXN0
YXRlbWVudCkgeworICAgICAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIHByZXBhcmUg
ZGVsZXRpb24gb2YgZGF0YWJhc2VzIGZyb20gb3JpZ2luICVzIGZyb20gdHJhY2tlciIsIG9yaWdp
bi5kYXRhYmFzZUlkZW50aWZpZXIoKS51dGY4KCkuZGF0YSgpKTsKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgICAgICAgICB9CiAKLSAgICAgICAgc3RhdGVtZW50LT5iaW5kVGV4
dCgxLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkpOworICAgICAgICAgICAgc3RhdGVtZW50
LT5iaW5kVGV4dCgxLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkpOwogCi0gICAgICAgIGlm
ICghc3RhdGVtZW50LT5leGVjdXRlQ29tbWFuZCgpKSB7Ci0gICAgICAgICAgICBMT0dfRVJST1Io
IlVuYWJsZSB0byBleGVjdXRlIGRlbGV0aW9uIG9mIGRhdGFiYXNlcyBmcm9tIG9yaWdpbiAlcyBm
cm9tIHRyYWNrZXIiLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlmaWVyKCkudXRmOCgpLmRhdGEoKSk7
Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KKyAgICAgICAgICAgIGlmICgh
c3RhdGVtZW50LT5leGVjdXRlQ29tbWFuZCgpKSB7CisgICAgICAgICAgICAgICAgTE9HX0VSUk9S
KCJVbmFibGUgdG8gZXhlY3V0ZSBkZWxldGlvbiBvZiBkYXRhYmFzZXMgZnJvbSBvcmlnaW4gJXMg
ZnJvbSB0cmFja2VyIiwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpLnV0ZjgoKS5kYXRhKCkp
OworICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIH0KIAotICAgICAg
ICBhdXRvIG9yaWdpblN0YXRlbWVudCA9IG1fZGF0YWJhc2UucHJlcGFyZVN0YXRlbWVudCgiREVM
RVRFIEZST00gT3JpZ2lucyBXSEVSRSBvcmlnaW49PyJfcyk7Ci0gICAgICAgIGlmICghb3JpZ2lu
U3RhdGVtZW50KSB7Ci0gICAgICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0byBwcmVwYXJlIGRl
bGV0aW9uIG9mIG9yaWdpbiAlcyBmcm9tIHRyYWNrZXIiLCBvcmlnaW4uZGF0YWJhc2VJZGVudGlm
aWVyKCkudXRmOCgpLmRhdGEoKSk7Ci0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAg
IH0KKyAgICAgICAgICAgIGF1dG8gb3JpZ2luU3RhdGVtZW50ID0gbV9kYXRhYmFzZS5wcmVwYXJl
U3RhdGVtZW50KCJERUxFVEUgRlJPTSBPcmlnaW5zIFdIRVJFIG9yaWdpbj0/Il9zKTsKKyAgICAg
ICAgICAgIGlmICghb3JpZ2luU3RhdGVtZW50KSB7CisgICAgICAgICAgICAgICAgTE9HX0VSUk9S
KCJVbmFibGUgdG8gcHJlcGFyZSBkZWxldGlvbiBvZiBvcmlnaW4gJXMgZnJvbSB0cmFja2VyIiwg
b3JpZ2luLmRhdGFiYXNlSWRlbnRpZmllcigpLnV0ZjgoKS5kYXRhKCkpOworICAgICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIH0KIAotICAgICAgICBvcmlnaW5TdGF0ZW1l
bnQtPmJpbmRUZXh0KDEsIG9yaWdpbi5kYXRhYmFzZUlkZW50aWZpZXIoKSk7CisgICAgICAgICAg
ICBvcmlnaW5TdGF0ZW1lbnQtPmJpbmRUZXh0KDEsIG9yaWdpbi5kYXRhYmFzZUlkZW50aWZpZXIo
KSk7CiAKLSAgICAgICAgaWYgKCFvcmlnaW5TdGF0ZW1lbnQtPmV4ZWN1dGVDb21tYW5kKCkpIHsK
LSAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIGV4ZWN1dGUgZGVsZXRpb24gb2YgZGF0
YWJhc2VzIGZyb20gb3JpZ2luICVzIGZyb20gdHJhY2tlciIsIG9yaWdpbi5kYXRhYmFzZUlkZW50
aWZpZXIoKS51dGY4KCkuZGF0YSgpKTsKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAg
ICAgICAgIGlmICghb3JpZ2luU3RhdGVtZW50LT5leGVjdXRlQ29tbWFuZCgpKSB7CisgICAgICAg
ICAgICAgICAgTE9HX0VSUk9SKCJVbmFibGUgdG8gZXhlY3V0ZSBkZWxldGlvbiBvZiBkYXRhYmFz
ZXMgZnJvbSBvcmlnaW4gJXMgZnJvbSB0cmFja2VyIiwgb3JpZ2luLmRhdGFiYXNlSWRlbnRpZmll
cigpLnV0ZjgoKS5kYXRhKCkpOworICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAg
ICAgICAgIH0KICAgICAgICAgfQogCiAgICAgICAgIHRyYW5zYWN0aW9uLmNvbW1pdCgpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3FsL1NRTGl0ZURhdGFiYXNlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5jcHAKaW5kZXggMDll
YjRhMWI0OTJiOTJiZWZmMzM0MTNjM2UwNWExZGQxM2U4MTc1Ni4uOTA3MGQzZGYwYmQ4ZGMwMmMw
NmRhODVmYjI1M2NiZTc2NGYxMmNiNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vc3FsL1NRTGl0ZURhdGFiYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9z
cWwvU1FMaXRlRGF0YWJhc2UuY3BwCkBAIC0yMjIsNiArMjIyLDggQEAgdm9pZCBTUUxpdGVEYXRh
YmFzZTo6dXNlV0FMSm91cm5hbE1vZGUoKQogdm9pZCBTUUxpdGVEYXRhYmFzZTo6Y2xvc2UoKQog
ewogICAgIGlmIChtX2RiKSB7CisgICAgICAgIEFTU0VSVF9XSVRIX01FU1NBR0UoIW1fc3RhdGVt
ZW50Q291bnQsICJBbGwgU1FMaXRlVHJhbnNhY3Rpb24gb2JqZWN0cyBzaG91bGQgYmUgZGVzdHJv
eWVkIGJlZm9yZSBjbG9zaW5nIHRoZSBkYXRhYmFzZSIpOworCiAgICAgICAgIC8vIEZJWE1FOiBU
aGlzIGlzIGJlaW5nIGNhbGxlZCBvbiB0aGUgbWFpbiB0aHJlYWQgZHVyaW5nIEpTIEdDLiA8cmRh
cjovL3Byb2JsZW0vNTczOTgxOD4KICAgICAgICAgLy8gQVNTRVJUKG1fb3BlbmluZ1RocmVhZCA9
PSAmVGhyZWFkOjpjdXJyZW50KCkpOwogICAgICAgICBzcWxpdGUzKiBkYiA9IG1fZGI7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcWwvU1FMaXRlRGF0YWJhc2UuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxpdGVEYXRhYmFzZS5oCmluZGV4IDQyZjIwZmRl
ZjcxZDRiYjFjYzU2M2E0NTUwNGRiYTJiY2Q0MGE0NDcuLmFiMTk0ZGRmMmMxNTFhZGZiMjk0MWRm
MzM3YjhmNThhMDQxMTkyZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3Nx
bC9TUUxpdGVEYXRhYmFzZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NxbC9TUUxp
dGVEYXRhYmFzZS5oCkBAIC0zMiw2ICszMiw3IEBACiAjaW5jbHVkZSA8d3RmL0xvY2suaD4KICNp
bmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAjaW5jbHVkZSA8d3RmL1VuaXF1ZVJlZi5oPgorI2lu
Y2x1ZGUgPHd0Zi9XZWFrUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC00Nyw3ICs0OCw3IEBAIGNsYXNzIERh
dGFiYXNlQXV0aG9yaXplcjsKIGNsYXNzIFNRTGl0ZVN0YXRlbWVudDsKIGNsYXNzIFNRTGl0ZVRy
YW5zYWN0aW9uOwogCi1jbGFzcyBTUUxpdGVEYXRhYmFzZSB7CitjbGFzcyBTUUxpdGVEYXRhYmFz
ZSA6IHB1YmxpYyBDYW5NYWtlV2Vha1B0cjxTUUxpdGVEYXRhYmFzZT4gewogICAgIFdURl9NQUtF
X0ZBU1RfQUxMT0NBVEVEOwogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFNRTGl0ZURhdGFiYXNl
KTsKICAgICBmcmllbmQgY2xhc3MgU1FMaXRlVHJhbnNhY3Rpb247CkBAIC0xNTUsNiArMTU2LDkg
QEAgcHVibGljOgogCiAgICAgV0VCQ09SRV9FWFBPUlQgdm9pZCByZWxlYXNlTWVtb3J5KCk7CiAK
KyAgICB2b2lkIGluY3JlbWVudFN0YXRlbWVudENvdW50KCk7CisgICAgdm9pZCBkZWNyZW1lbnRT
dGF0ZW1lbnRDb3VudCgpOworCiBwcml2YXRlOgogICAgIHN0YXRpYyBpbnQgYXV0aG9yaXplckZ1
bmN0aW9uKHZvaWQqLCBpbnQsIGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgY29uc3QgY2hhcios
IGNvbnN0IGNoYXIqKTsKIApAQCAtMTcxLDYgKzE3NSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBt
X3RyYW5zYWN0aW9uSW5Qcm9ncmVzcyB7IGZhbHNlIH07CiAjaWYgQVNTRVJUX0VOQUJMRUQKICAg
ICBib29sIG1fc2hhcmFibGUgeyBmYWxzZSB9OworICAgIHN0ZDo6YXRvbWljPHVuc2lnbmVkPiBt
X3N0YXRlbWVudENvdW50IHsgMCB9OwogI2VuZGlmCiAKICAgICBib29sIG1fdXNlV0FMIHsgZmFs
c2UgfTsKQEAgLTE4Nyw0ICsxOTIsMTkgQEAgcHJpdmF0ZToKICAgICBDU3RyaW5nIG1fb3BlbkVy
cm9yTWVzc2FnZTsKIH07CiAKK2lubGluZSB2b2lkIFNRTGl0ZURhdGFiYXNlOjppbmNyZW1lbnRT
dGF0ZW1lbnRDb3VudCgpCit7CisjaWYgQVNTRVJUX0VOQUJMRUQKKyAgICArK21fc3RhdGVtZW50
Q291bnQ7CisjZW5kaWYKK30KKworaW5saW5lIHZvaWQgU1FMaXRlRGF0YWJhc2U6OmRlY3JlbWVu
dFN0YXRlbWVudENvdW50KCkKK3sKKyNpZiBBU1NFUlRfRU5BQkxFRAorICAgIEFTU0VSVChtX3N0
YXRlbWVudENvdW50KTsKKyAgICAtLW1fc3RhdGVtZW50Q291bnQ7CisjZW5kaWYKK30KKwogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
c3FsL1NRTGl0ZVN0YXRlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcWwvU1FM
aXRlU3RhdGVtZW50LmNwcAppbmRleCA3MDlkNDFiZjE0ZDk5ZGY3NWVhYzhjYjc4MDZhOTAyYmRh
Mjk0ODYwLi5jNTA4NGY2NzA3ZGM2NmRkODVjYTk0OTVhZjA4NWEzODE4YjhkNDJiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcWwvU1FMaXRlU3RhdGVtZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9zcWwvU1FMaXRlU3RhdGVtZW50LmNwcApAQCAtNDYs
MTcgKzQ2LDIwIEBAIFNRTGl0ZVN0YXRlbWVudDo6U1FMaXRlU3RhdGVtZW50KFNRTGl0ZURhdGFi
YXNlJiBkYiwgc3FsaXRlM19zdG10KiBzdGF0ZW1lbnQpCiAgICAgLCBtX3N0YXRlbWVudChzdGF0
ZW1lbnQpCiB7CiAgICAgQVNTRVJUKHN0YXRlbWVudCk7CisgICAgbV9kYXRhYmFzZS5pbmNyZW1l
bnRTdGF0ZW1lbnRDb3VudCgpOwogfQogCiBTUUxpdGVTdGF0ZW1lbnQ6OlNRTGl0ZVN0YXRlbWVu
dChTUUxpdGVTdGF0ZW1lbnQmJiBvdGhlcikKICAgICA6IG1fZGF0YWJhc2Uob3RoZXIuZGF0YWJh
c2UoKSkKICAgICAsIG1fc3RhdGVtZW50KHN0ZDo6ZXhjaGFuZ2Uob3RoZXIubV9zdGF0ZW1lbnQs
IG51bGxwdHIpKQogeworICAgIG1fZGF0YWJhc2UuaW5jcmVtZW50U3RhdGVtZW50Q291bnQoKTsK
IH0KIAogU1FMaXRlU3RhdGVtZW50Ojp+U1FMaXRlU3RhdGVtZW50KCkKIHsKICAgICBzcWxpdGUz
X2ZpbmFsaXplKG1fc3RhdGVtZW50KTsKKyAgICBtX2RhdGFiYXNlLmRlY3JlbWVudFN0YXRlbWVu
dENvdW50KCk7CiB9CiAKIGludCBTUUxpdGVTdGF0ZW1lbnQ6OnN0ZXAoKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdlL1N0b3JhZ2VUcmFja2VyLmNwcCBiL1NvdXJjZS9X
ZWJLaXRMZWdhY3kvU3RvcmFnZS9TdG9yYWdlVHJhY2tlci5jcHAKaW5kZXggOGIxZTEwYjI0Yjhh
NDI3ZWQ2YjJiMTdiNDc0YTE0MmIxY2MyOTc2NC4uYTEyZWQ0OGU2M2I3ZDliYjNhZWJkOGE3ZmI3
ZWRiMWZkYTNhOWRiZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdlL1N0
b3JhZ2VUcmFja2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvU3RvcmFn
ZVRyYWNrZXIuY3BwCkBAIC01MTksMTUgKzUxOSwxNyBAQCB2b2lkIFN0b3JhZ2VUcmFja2VyOjpz
eW5jRGVsZXRlT3JpZ2luKGNvbnN0IFN0cmluZyYgb3JpZ2luSWRlbnRpZmllcikKICAgICAgICAg
cmV0dXJuOwogICAgIH0KICAgICAKLSAgICBhdXRvIGRlbGV0ZVN0YXRlbWVudCA9IG1fZGF0YWJh
c2UucHJlcGFyZVN0YXRlbWVudCgiREVMRVRFIEZST00gT3JpZ2lucyB3aGVyZSBvcmlnaW49PyJf
cyk7Ci0gICAgaWYgKCFkZWxldGVTdGF0ZW1lbnQpIHsKLSAgICAgICAgTE9HX0VSUk9SKCJVbmFi
bGUgdG8gcHJlcGFyZSBkZWxldGlvbiBvZiBvcmlnaW4gJyVzJyIsIG9yaWdpbklkZW50aWZpZXIu
YXNjaWkoKS5kYXRhKCkpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotICAgIGRlbGV0ZVN0YXRl
bWVudC0+YmluZFRleHQoMSwgb3JpZ2luSWRlbnRpZmllcik7Ci0gICAgaWYgKCFkZWxldGVTdGF0
ZW1lbnQtPmV4ZWN1dGVDb21tYW5kKCkpIHsKLSAgICAgICAgTE9HX0VSUk9SKCJVbmFibGUgdG8g
ZXhlY3V0ZSBkZWxldGlvbiBvZiBvcmlnaW4gJyVzJyIsIG9yaWdpbklkZW50aWZpZXIuYXNjaWko
KS5kYXRhKCkpOwotICAgICAgICByZXR1cm47CisgICAgeworICAgICAgICBhdXRvIGRlbGV0ZVN0
YXRlbWVudCA9IG1fZGF0YWJhc2UucHJlcGFyZVN0YXRlbWVudCgiREVMRVRFIEZST00gT3JpZ2lu
cyB3aGVyZSBvcmlnaW49PyJfcyk7CisgICAgICAgIGlmICghZGVsZXRlU3RhdGVtZW50KSB7Cisg
ICAgICAgICAgICBMT0dfRVJST1IoIlVuYWJsZSB0byBwcmVwYXJlIGRlbGV0aW9uIG9mIG9yaWdp
biAnJXMnIiwgb3JpZ2luSWRlbnRpZmllci5hc2NpaSgpLmRhdGEoKSk7CisgICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgZGVsZXRlU3RhdGVtZW50LT5iaW5kVGV4dCgxLCBv
cmlnaW5JZGVudGlmaWVyKTsKKyAgICAgICAgaWYgKCFkZWxldGVTdGF0ZW1lbnQtPmV4ZWN1dGVD
b21tYW5kKCkpIHsKKyAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIGV4ZWN1dGUgZGVs
ZXRpb24gb2Ygb3JpZ2luICclcyciLCBvcmlnaW5JZGVudGlmaWVyLmFzY2lpKCkuZGF0YSgpKTsK
KyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQogICAgIH0KIAogICAgIEZpbGVTeXN0ZW06
OmRlbGV0ZUZpbGUocGF0aCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>