<?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>211790</bug_id>
          
          <creation_ts>2020-05-12 11:31:34 -0700</creation_ts>
          <short_desc>AXIsolatedTree::updateChildren needs to apply pending changes before updating the given node.</short_desc>
          <delta_ts>2020-05-18 10:46:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Andres Gonzalez">andresg_22</reporter>
          <assigned_to name="Andres Gonzalez">andresg_22</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>darin</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1651824</commentid>
    <comment_count>0</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-05-12 11:31:34 -0700</bug_when>
    <thetext>AXIsolatedTree::updateChildren needs to apply pending changes before updating the given node.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651830</commentid>
    <comment_count>1</comment_count>
      <attachid>399151</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-05-12 11:43:40 -0700</bug_when>
    <thetext>Created attachment 399151
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651834</commentid>
    <comment_count>2</comment_count>
      <attachid>399151</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2020-05-12 11:50:14 -0700</bug_when>
    <thetext>Comment on attachment 399151
Patch

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

&gt; Source/WebCore/ChangeLog:10
&gt; +        AXIsolatedTree::updateChildren may be fired for a and isolated object

&quot;for a and isolated&quot;

&gt; Source/WebCore/ChangeLog:12
&gt; +        fail, causing that the isolated tree is not updated. This patch calls

rewrite:

&quot;causing the isolated tree to not be updated.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1651841</commentid>
    <comment_count>3</comment_count>
      <attachid>399151</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-05-12 12:12:53 -0700</bug_when>
    <thetext>Comment on attachment 399151
Patch

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

&gt; Source/WebCore/accessibility/AXLogger.cpp:63
&gt; -void AXLogger::log(const AXCoreObject&amp; object)
&gt; +void AXLogger::log(const RefPtr&lt;AXCoreObject&gt;&amp; object)

This goes from const to non-const (not sure why), from non-null to allowing null (makes sense), and from raw pointer to a smart pointer (no good reason I can think of for that).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652219</commentid>
    <comment_count>4</comment_count>
      <attachid>399259</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-05-13 07:35:44 -0700</bug_when>
    <thetext>Created attachment 399259
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652222</commentid>
    <comment_count>5</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-05-13 07:39:13 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #2)
&gt; Comment on attachment 399151 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=399151&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:10
&gt; &gt; +        AXIsolatedTree::updateChildren may be fired for a and isolated object
&gt; 
&gt; &quot;for a and isolated&quot;

Fixe.
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:12
&gt; &gt; +        fail, causing that the isolated tree is not updated. This patch calls
&gt; 
&gt; rewrite:
&gt; 
&gt; &quot;causing the isolated tree to not be updated.&quot;

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652229</commentid>
    <comment_count>6</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2020-05-13 07:44:47 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #3)
&gt; Comment on attachment 399151 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=399151&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/AXLogger.cpp:63
&gt; &gt; -void AXLogger::log(const AXCoreObject&amp; object)
&gt; &gt; +void AXLogger::log(const RefPtr&lt;AXCoreObject&gt;&amp; object)
&gt; 
&gt; This goes from const to non-const (not sure why), from non-null to allowing
&gt; null (makes sense), and from raw pointer to a smart pointer (no good reason
&gt; I can think of for that).

There are some non-const properties in AXCoreObject that we want to log. The smart pointer is an attempt to hold the object while logging it on the secondary thread when it may be released on the main thread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652641</commentid>
    <comment_count>7</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-14 08:35:50 -0700</bug_when>
    <thetext>Committed r261694: &lt;https://trac.webkit.org/changeset/261694&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 399259.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1652643</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-05-14 08:36:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/63229053&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1653664</commentid>
    <comment_count>9</comment_count>
      <attachid>399151</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-05-18 10:46:41 -0700</bug_when>
    <thetext>Comment on attachment 399151
Patch

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

&gt;&gt;&gt; Source/WebCore/accessibility/AXLogger.cpp:63
&gt;&gt;&gt; +void AXLogger::log(const RefPtr&lt;AXCoreObject&gt;&amp; object)
&gt;&gt; 
&gt;&gt; This goes from const to non-const (not sure why), from non-null to allowing null (makes sense), and from raw pointer to a smart pointer (no good reason I can think of for that).
&gt; 
&gt; There are some non-const properties in AXCoreObject that we want to log. The smart pointer is an attempt to hold the object while logging it on the secondary thread when it may be released on the main thread.

Using RefPtr is fine for the reason you cite above, but making the argument type be const RefPtr&amp; doesn’t add value, as far as I can tell.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399151</attachid>
            <date>2020-05-12 11:43:40 -0700</date>
            <delta_ts>2020-05-13 07:35:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211790-20200512144339.patch</filename>
            <type>text/plain</type>
            <size>11754</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNTM2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQyM2IzN2JjNDU5YTJj
NzQwM2M1YzYzOWNiMjQxMGRmMDQ2ZGMwMS4uM2M2NDRhNWZiODg0YWEyMDZiNzdjZjZjMDVmNjli
MTExYWFjMWE3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIwLTA1LTEyICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBBWElzb2xhdGVk
VHJlZTo6dXBkYXRlQ2hpbGRyZW4gbmVlZHMgdG8gYXBwbHkgcGVuZGluZyBjaGFuZ2VzIGJlZm9y
ZSB1cGRhdGluZyB0aGUgZ2l2ZW4gbm9kZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMTc5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIENvdmVyZWQgYnkgbXVsdGlwbGUgdGVzdHMuCisKKyAgICAgICAg
QVhJc29sYXRlZFRyZWU6OnVwZGF0ZUNoaWxkcmVuIG1heSBiZSBmaXJlZCBmb3IgYSBhbmQgaXNv
bGF0ZWQgb2JqZWN0CisgICAgICAgIHRoYXQgaXMgc3RpbGwgaW4gdGhlIHBlbmRpbmcgY2hhbmdl
cyBsaXN0LCBhbmQgdGh1cyBub2RlRm9ySUQgd291bGQKKyAgICAgICAgZmFpbCwgY2F1c2luZyB0
aGF0IHRoZSBpc29sYXRlZCB0cmVlIGlzIG5vdCB1cGRhdGVkLiBUaGlzIHBhdGNoIGNhbGxzCisg
ICAgICAgIGFwcGx5UGVuZGluZ0NoYW5nZXMgYmVmb3JlIHVwZGF0aW5nIHRoZSBnaXZlbiBub2Rl
J3MgY2hpbGRyZW4uCisgICAgICAgIEFkZGl0aW9uYWwgbG9nZ2luZyB3YXMgYWRkZWQgaW5jbHVk
aW5nIHRoZSBsb2dnaW5nIG9mIHRoZSBBWE9iamVjdENhY2hlCisgICAgICAgIG9iamVjdCBoaWVy
YXJjaHkuCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FYTG9nZ2VyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkFYTG9nZ2VyOjpsb2cpOgorICAgICAgICAoV2ViQ29yZTo6b3BlcmF0b3I8PCk6
CisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5oOgorICAgICAgICAqIGFjY2Vzc2li
aWxpdHkvQVhPYmplY3RDYWNoZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hl
OjpyZW1vdmUpOgorICAgICAgICAoV2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6cG9zdE5vdGlmaWNh
dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjpwZXJmb3JtRGVmZXJyZWRD
YWNoZVVwZGF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpBWE9iamVjdENhY2hlOjp1cGRhdGVJc29s
YXRlZFRyZWUpOgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oOgorICAg
ICAgICAqIGFjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVOb2RlKToKKyAgICAgICAgKFdl
YkNvcmU6OkFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVTdWJ0cmVlKToKKyAgICAgICAgKFdlYkNvcmU6
OkFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVDaGlsZHJlbik6CisgICAgICAgIChXZWJDb3JlOjpBWElz
b2xhdGVkVHJlZTo6Zm9jdXNlZE5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6QVhJc29sYXRlZFRy
ZWU6OnJlbW92ZU5vZGUpOgorICAgICAgICAoV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OnJlbW92
ZVN1YnRyZWUpOgorICAgICAgICAoV2ViQ29yZTo6QVhJc29sYXRlZFRyZWU6OmFwcGx5UGVuZGlu
Z0NoYW5nZXMpOgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlP
YmplY3RXcmFwcGVyTWFjLm1tOgorICAgICAgICAoLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3Jh
cHBlciBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlVmFsdWU6XSk6CisKIDIwMjAtMDUtMTEgIEFuZHJl
cyBHb256YWxleiAgPGFuZHJlc2dfMjJAYXBwbGUuY29tPgogCiAgICAgICAgIEZpeGVzIGZvciBj
cmFzaGVzIGluIGlzb2xhdGVkIHRyZWUgbW9kZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQVhMb2dnZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0
eS9BWExvZ2dlci5jcHAKaW5kZXggMzY2MjA5OGFhODgwOTg3ZjRjZDJjZTc2MWE2YmRkZTQ4ZjI2
MjVhNy4uMmM0ZTU5ZTBkMzRlMzhlNmFlNGE0ZGE4ZDNhZDk1MjA2YzljMTAyMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5jcHAKQEAgLTI5LDYgKzI5LDcgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJBWExvZ2dlci5oIgogCisjaW5jbHVkZSAiQVhP
YmplY3RDYWNoZS5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9U
ZXh0U3RyZWFtLmg+CiAKQEAgLTU5LDEwICs2MCwxNSBAQCB2b2lkIEFYTG9nZ2VyOjpsb2coY29u
c3QgU3RyaW5nJiBtZXNzYWdlKQogI2VuZGlmCiB9CiAKLXZvaWQgQVhMb2dnZXI6OmxvZyhjb25z
dCBBWENvcmVPYmplY3QmIG9iamVjdCkKK3ZvaWQgQVhMb2dnZXI6OmxvZyhjb25zdCBSZWZQdHI8
QVhDb3JlT2JqZWN0PiYgb2JqZWN0KQogewogICAgIFRleHRTdHJlYW0gc3RyZWFtKFRleHRTdHJl
YW06OkxpbmVNb2RlOjpNdWx0aXBsZUxpbmUpOwotICAgIHN0cmVhbSA8PCBvYmplY3Q7CisKKyAg
ICBpZiAob2JqZWN0KQorICAgICAgICBzdHJlYW0gPDwgKm9iamVjdDsKKyAgICBlbHNlCisgICAg
ICAgIHN0cmVhbSA8PCAibnVsbCI7CisKICAgICBMT0coQWNjZXNzaWJpbGl0eSwgIiVzIiwgc3Ry
ZWFtLnJlbGVhc2UoKS51dGY4KCkuZGF0YSgpKTsKIH0KIApAQCAtMTAxLDYgKzEwNywxMyBAQCB2
b2lkIEFYTG9nZ2VyOjpsb2coQVhJc29sYXRlZFRyZWUmIHRyZWUpCiB9CiAjZW5kaWYKIAordm9p
ZCBBWExvZ2dlcjo6bG9nKEFYT2JqZWN0Q2FjaGUmIGF4T2JqZWN0Q2FjaGUpCit7CisgICAgVGV4
dFN0cmVhbSBzdHJlYW0oVGV4dFN0cmVhbTo6TGluZU1vZGU6Ok11bHRpcGxlTGluZSk7CisgICAg
c3RyZWFtIDw8IGF4T2JqZWN0Q2FjaGU7CisgICAgTE9HKEFjY2Vzc2liaWxpdHksICIlcyIsIHN0
cmVhbS5yZWxlYXNlKCkudXRmOCgpLmRhdGEoKSk7Cit9CisKIFRleHRTdHJlYW0mIG9wZXJhdG9y
PDwoVGV4dFN0cmVhbSYgc3RyZWFtLCBBY2Nlc3NpYmlsaXR5Um9sZSByb2xlKQogewogICAgIHN3
aXRjaCAocm9sZSkgewpAQCAtNzAwLDQgKzcxMywxNyBAQCBUZXh0U3RyZWFtJiBvcGVyYXRvcjw8
KFRleHRTdHJlYW0mIHN0cmVhbSwgQVhJc29sYXRlZFRyZWUmIHRyZWUpCiB9CiAjZW5kaWYKIAor
VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiBzdHJlYW0sIEFYT2JqZWN0Q2FjaGUm
IGF4T2JqZWN0Q2FjaGUpCit7CisgICAgVGV4dFN0cmVhbTo6R3JvdXBTY29wZSBncm91cFNjb3Bl
KHN0cmVhbSk7CisgICAgc3RyZWFtIDw8ICJBWE9iamVjdENhY2hlICIgPDwgJmF4T2JqZWN0Q2Fj
aGU7CisKKyAgICBpZiAoYXV0byogcm9vdCA9IGF4T2JqZWN0Q2FjaGUuZ2V0KGF4T2JqZWN0Q2Fj
aGUuZG9jdW1lbnQoKS52aWV3KCkpKQorICAgICAgICBBWExvZ2dlcjo6YWRkKHN0cmVhbSwgcm9v
dCwgdHJ1ZSk7CisgICAgZWxzZQorICAgICAgICBzdHJlYW0gPDwgIk5vIHJvb3QhIjsKKworICAg
IHJldHVybiBzdHJlYW07Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhMb2dnZXIuaCBiL1NvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQVhMb2dnZXIuaAppbmRleCA1YTJkYzZhMWU3ZmE5NTk2NTMwNzA1MjA4
YzRjZTA0OTk2YjNjYjI1Li5kOWE2MDFjOWQyMmY1NmNlOTMwMDY5NDk2YTg3ODVhN2ExYTYwZTRj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYTG9nZ2VyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5oCkBAIC0zNiwxMSArMzYs
MTIgQEAgcHVibGljOgogICAgIEFYTG9nZ2VyKGNvbnN0IFN0cmluZyYgbWV0aG9kTmFtZSk7CiAg
ICAgfkFYTG9nZ2VyKCk7CiAgICAgc3RhdGljIHZvaWQgbG9nKGNvbnN0IFN0cmluZyYpOwotICAg
IHN0YXRpYyB2b2lkIGxvZyhjb25zdCBBWENvcmVPYmplY3QmKTsKKyAgICBzdGF0aWMgdm9pZCBs
b2coY29uc3QgUmVmUHRyPEFYQ29yZU9iamVjdD4mKTsKICAgICBzdGF0aWMgdm9pZCBsb2coY29u
c3Qgc3RkOjpwYWlyPFJlZlB0cjxBWENvcmVPYmplY3Q+LCBBWE9iamVjdENhY2hlOjpBWE5vdGlm
aWNhdGlvbj4mKTsKICNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09MQVRFRF9UUkVFKQogICAg
IHN0YXRpYyB2b2lkIGxvZyhBWElzb2xhdGVkVHJlZSYpOwogI2VuZGlmCisgICAgc3RhdGljIHZv
aWQgbG9nKEFYT2JqZWN0Q2FjaGUmKTsKICAgICBzdGF0aWMgdm9pZCBhZGQoVGV4dFN0cmVhbSYs
IGNvbnN0IFJlZlB0cjxBWENvcmVPYmplY3Q+JiwgYm9vbCByZWN1cnNpdmUgPSBmYWxzZSk7CiBw
cml2YXRlOgogICAgIFN0cmluZyBtX21ldGhvZE5hbWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcAppbmRleCBiMzUwYTM0ZmQ0MWUxNTY5ZGU0Y2Vi
NmYzNTM2MWUyZDUwMjI4M2IzLi42OTY3ZTY2NjhjMTIzZDhjNTQyYTllMmM0MmFlN2E3MTA5Yjgw
MjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2Fj
aGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5j
cHAKQEAgLTgzMyw2ICs4MzMsOSBAQCBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBBWE9iamVjdENhY2hl
OjpnZXRPckNyZWF0ZShBY2Nlc3NpYmlsaXR5Um9sZSByb2xlKQogCiB2b2lkIEFYT2JqZWN0Q2Fj
aGU6OnJlbW92ZShBWElEIGF4SUQpCiB7CisgICAgQVhUUkFDRSgiQVhPYmplY3RDYWNoZTo6cmVt
b3ZlIik7CisgICAgQVhMT0cobWFrZVN0cmluZygiQVhJRCAiLCBheElEKSk7CisKICAgICBpZiAo
IWF4SUQpCiAgICAgICAgIHJldHVybjsKIApAQCAtMTExNCw2ICsxMTE3LDkgQEAgdm9pZCBBWE9i
amVjdENhY2hlOjpwb3N0Tm90aWZpY2F0aW9uKE5vZGUqIG5vZGUsIEFYTm90aWZpY2F0aW9uIG5v
dGlmaWNhdGlvbiwgUG8KIAogdm9pZCBBWE9iamVjdENhY2hlOjpwb3N0Tm90aWZpY2F0aW9uKEFY
Q29yZU9iamVjdCogb2JqZWN0LCBEb2N1bWVudCogZG9jdW1lbnQsIEFYTm90aWZpY2F0aW9uIG5v
dGlmaWNhdGlvbiwgUG9zdFRhcmdldCBwb3N0VGFyZ2V0LCBQb3N0VHlwZSBwb3N0VHlwZSkKIHsK
KyAgICBBWFRSQUNFKCJBWE9iamVjdENhY2hlOjpwb3N0Tm90aWZpY2F0aW9uIik7CisgICAgQVhM
T0coc3RkOjptYWtlX3BhaXIob2JqZWN0LCBub3RpZmljYXRpb24pKTsKKwogICAgIHN0b3BDYWNo
aW5nQ29tcHV0ZWRPYmplY3RBdHRyaWJ1dGVzKCk7CiAKICAgICBpZiAob2JqZWN0ICYmIHBvc3RU
YXJnZXQgPT0gVGFyZ2V0T2JzZXJ2YWJsZVBhcmVudCkKQEAgLTMwMzEsNiArMzAzNyw3IEBAIHZv
aWQgQVhPYmplY3RDYWNoZTo6cGVyZm9ybUNhY2hlVXBkYXRlVGltZXJGaXJlZCgpCiAgICAgCiB2
b2lkIEFYT2JqZWN0Q2FjaGU6OnBlcmZvcm1EZWZlcnJlZENhY2hlVXBkYXRlKCkKIHsKKyAgICBB
WFRSQUNFKCJBWE9iamVjdENhY2hlOjpwZXJmb3JtRGVmZXJyZWRDYWNoZVVwZGF0ZSIpOwogICAg
IGlmIChtX3BlcmZvcm1pbmdEZWZlcnJlZENhY2hlVXBkYXRlKQogICAgICAgICByZXR1cm47CiAK
QEAgLTMxMDcsNiArMzExNCw4IEBAIHZvaWQgQVhPYmplY3RDYWNoZTo6dXBkYXRlSXNvbGF0ZWRU
cmVlKEFYQ29yZU9iamVjdCYgb2JqZWN0LCBBWE5vdGlmaWNhdGlvbiBub3RpCiB7CiAgICAgQVhU
UkFDRSgiQVhPYmplY3RDYWNoZTo6dXBkYXRlSXNvbGF0ZWRUcmVlIik7CiAgICAgQVhMT0coc3Rk
OjptYWtlX3BhaXIoJm9iamVjdCwgbm90aWZpY2F0aW9uKSk7CisgICAgQVhMT0coKnRoaXMpOwor
CiAgICAgaWYgKCFtX3BhZ2VJRCkKICAgICAgICAgcmV0dXJuOwogCkBAIC0zMTQwLDYgKzMxNDks
OCBAQCBzdGF0aWMgYm9vbCBhcHBlbmRJZk5vdENvbnRhaW5zTWF0Y2hpbmcoVmVjdG9yPFQ+JiB2
ZWN0b3IsIGNvbnN0IFQmIHZhbHVlLCBGIG1hdAogdm9pZCBBWE9iamVjdENhY2hlOjp1cGRhdGVJ
c29sYXRlZFRyZWUoY29uc3QgVmVjdG9yPHN0ZDo6cGFpcjxSZWZQdHI8QVhDb3JlT2JqZWN0Piwg
QVhOb3RpZmljYXRpb24+PiYgbm90aWZpY2F0aW9ucykKIHsKICAgICBBWFRSQUNFKCJBWE9iamVj
dENhY2hlOjp1cGRhdGVJc29sYXRlZFRyZWUiKTsKKyAgICBBWExPRygqdGhpcyk7CisKICAgICBp
ZiAoIW1fcGFnZUlEKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BWE9iamVjdENhY2hlLmgKaW5kZXggNDZiZGY0MWJlZjdmNmY4YzA5MDFlNDg5MGJi
YTcyNzVmNGNiNzM0Mi4uN2E3OTBkNmM2YTE1NTk2ZDk0M2Y2NWQwYzZjNTQ2YTJiY2JiNjUxMyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgKQEAgLTE0
Myw2ICsxNDMsNyBAQCBlbnVtIFBvc3RUeXBlIHsgUG9zdFN5bmNocm9ub3VzbHksIFBvc3RBc3lu
Y2hyb25vdXNseSB9OwogCiBjbGFzcyBBWE9iamVjdENhY2hlIHsKICAgICBXVEZfTUFLRV9OT05D
T1BZQUJMRShBWE9iamVjdENhY2hlKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CisgICAgZnJp
ZW5kIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRleHRTdHJlYW0mLCBBWE9iamVj
dENhY2hlJik7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgQVhPYmplY3RDYWNoZShEb2N1bWVudCYp
OwogICAgIH5BWE9iamVjdENhY2hlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAKaW5kZXggM2Ji
NDNiYTRkYWJjNmJlMmY4ZGJjMTIyNWM2ZjhmYTM2NTYzZjg2ZC4uMjY1ZWExZTcwMjAxZjY4MjQz
NjQ3Zjk4ZmFhZWZkZDQ4YmMxMmY4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRUcmVlLmNwcApAQCAtMTk3
LDYgKzE5Nyw3IEBAIFJlZjxBWElzb2xhdGVkT2JqZWN0PiBBWElzb2xhdGVkVHJlZTo6Y3JlYXRl
U3VidHJlZShBWENvcmVPYmplY3QmIGF4T2JqZWN0LCBBWElECiB2b2lkIEFYSXNvbGF0ZWRUcmVl
Ojp1cGRhdGVOb2RlKEFYQ29yZU9iamVjdCYgYXhPYmplY3QpCiB7CiAgICAgQVhUUkFDRSgiQVhJ
c29sYXRlZFRyZWU6OnVwZGF0ZU5vZGUiKTsKKyAgICBBWExPRygmYXhPYmplY3QpOwogICAgIEFT
U0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgQVhJRCBheElEID0gYXhPYmplY3Qub2JqZWN0SUQo
KTsKICAgICBhdXRvKiBheFBhcmVudCA9IGF4T2JqZWN0LnBhcmVudE9iamVjdCgpOwpAQCAtMjE4
LDYgKzIxOSw3IEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OnVwZGF0ZU5vZGUoQVhDb3JlT2JqZWN0
JiBheE9iamVjdCkKIHZvaWQgQVhJc29sYXRlZFRyZWU6OnVwZGF0ZVN1YnRyZWUoQVhDb3JlT2Jq
ZWN0JiBheE9iamVjdCkKIHsKICAgICBBWFRSQUNFKCJBWElzb2xhdGVkVHJlZTo6dXBkYXRlU3Vi
dHJlZSIpOworICAgIEFYTE9HKCZheE9iamVjdCk7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgp
KTsKICAgICByZW1vdmVTdWJ0cmVlKGF4T2JqZWN0Lm9iamVjdElEKCkpOwogICAgIGF1dG8qIGF4
UGFyZW50ID0gYXhPYmplY3QucGFyZW50T2JqZWN0KCk7CkBAIC0yMjgsMTUgKzIzMCwyMiBAQCB2
b2lkIEFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVTdWJ0cmVlKEFYQ29yZU9iamVjdCYgYXhPYmplY3Qp
CiB2b2lkIEFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVDaGlsZHJlbihBWENvcmVPYmplY3QmIGF4T2Jq
ZWN0KQogewogICAgIEFYVFJBQ0UoIkFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVDaGlsZHJlbiIpOwor
ICAgIEFYTE9HKCJGb3IgQVhPYmplY3Q6Iik7CisgICAgQVhMT0coJmF4T2JqZWN0KTsKICAgICBB
U1NFUlQoaXNNYWluVGhyZWFkKCkpOworCiAgICAgaWYgKCFheE9iamVjdC5kb2N1bWVudCgpIHx8
ICFheE9iamVjdC5kb2N1bWVudCgpLT5oYXNMaXZpbmdSZW5kZXJUcmVlKCkpCiAgICAgICAgIHJl
dHVybjsKIAogICAgIEFYSUQgYXhPYmplY3RJRCA9IGF4T2JqZWN0Lm9iamVjdElEKCk7CisKKyAg
ICBhcHBseVBlbmRpbmdDaGFuZ2VzKCk7CiAgICAgTG9ja0hvbGRlciBsb2NrZXIgeyBtX2NoYW5n
ZUxvZ0xvY2sgfTsKICAgICBhdXRvIG9iamVjdCA9IG5vZGVGb3JJRChheE9iamVjdElEKTsKLSAg
ICBpZiAoIW9iamVjdCkKKyAgICBpZiAoIW9iamVjdCkgeworICAgICAgICBBWExPRygiTm8gYXNz
b2NpYXRlZCBpc29sYXRlZCBvYmplY3QhIik7CiAgICAgICAgIHJldHVybjsgLy8gbm90aGluZyB0
byB1cGRhdGUuCisgICAgfQogCiAgICAgYXV0byByZW1vdmFscyA9IG9iamVjdC0+bV9jaGlsZHJl
bklEczsKICAgICBsb2NrZXIudW5sb2NrRWFybHkoKTsKQEAgLTI1MCw2ICsyNTksOCBAQCB2b2lk
IEFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVDaGlsZHJlbihBWENvcmVPYmplY3QmIGF4T2JqZWN0KQog
ICAgICAgICAgICAgcmVtb3ZhbHMucmVtb3ZlKGluZGV4KTsKICAgICAgICAgZWxzZSB7CiAgICAg
ICAgICAgICAvLyBUaGlzIGlzIGEgbmV3IGNoaWxkLCBhZGQgaXQgdG8gdGhlIHRyZWUuCisgICAg
ICAgICAgICBBWExPRygiQWRkaW5nIGEgbmV3IGNoaWxkIGZvcjoiKTsKKyAgICAgICAgICAgIEFY
TE9HKGF4Q2hpbGRyZW5baV0pOwogICAgICAgICAgICAgZ2VuZXJhdGVTdWJ0cmVlKCpheENoaWxk
cmVuW2ldLCBheE9iamVjdElELCB0cnVlKTsKICAgICAgICAgfQogICAgIH0KQEAgLTI2OCwxMSAr
Mjc5LDEzIEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OnVwZGF0ZUNoaWxkcmVuKEFYQ29yZU9iamVj
dCYgYXhPYmplY3QpCiAKIFJlZlB0cjxBWElzb2xhdGVkT2JqZWN0PiBBWElzb2xhdGVkVHJlZTo6
Zm9jdXNlZE5vZGUoKQogewotICAgIEFYVFJBQ0UoIkFYSXNvbGF0ZWRUcmVlOjpmb2N1c2VkVUlF
bGVtZW50Iik7CisgICAgQVhUUkFDRSgiQVhJc29sYXRlZFRyZWU6OmZvY3VzZWROb2RlIik7CiAg
ICAgLy8gQXBwbHkgcGVuZGluZyBjaGFuZ2VzIGluIGNhc2UgZm9jdXMgaGFzIGNoYW5nZWQgYW5k
IGhhc24ndCBiZWVuIHVwZGF0ZWQuCiAgICAgYXBwbHlQZW5kaW5nQ2hhbmdlcygpOwogICAgIExv
Y2tIb2xkZXIgbG9ja2VyIHsgbV9jaGFuZ2VMb2dMb2NrIH07CiAgICAgQVhMT0cobWFrZVN0cmlu
ZygiZm9jdXNlZE5vZGVJRCAiLCBtX2ZvY3VzZWROb2RlSUQpKTsKKyAgICBBWExPRygiZm9jdXNl
ZCBub2RlOiIpOworICAgIEFYTE9HKG5vZGVGb3JJRChtX2ZvY3VzZWROb2RlSUQpKTsKICAgICBy
ZXR1cm4gbm9kZUZvcklEKG1fZm9jdXNlZE5vZGVJRCk7CiB9CiAKQEAgLTMwNSw2ICszMTgsOCBA
QCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjpzZXRGb2N1c2VkTm9kZUlEKEFYSUQgYXhJRCkKIHZvaWQg
QVhJc29sYXRlZFRyZWU6OnJlbW92ZU5vZGUoQVhJRCBheElEKQogewogICAgIEFYVFJBQ0UoIkFY
SXNvbGF0ZWRUcmVlOjpyZW1vdmVOb2RlIik7CisgICAgQVhMT0cobWFrZVN0cmluZygiQVhJRCAi
LCBheElEKSk7CisKICAgICBMb2NrSG9sZGVyIGxvY2tlciB7IG1fY2hhbmdlTG9nTG9jayB9Owog
ICAgIG1fcGVuZGluZ05vZGVSZW1vdmFscy5hcHBlbmQoYXhJRCk7CiB9CkBAIC0zMTIsNiArMzI3
LDcgQEAgdm9pZCBBWElzb2xhdGVkVHJlZTo6cmVtb3ZlTm9kZShBWElEIGF4SUQpCiB2b2lkIEFY
SXNvbGF0ZWRUcmVlOjpyZW1vdmVTdWJ0cmVlKEFYSUQgYXhJRCkKIHsKICAgICBBWFRSQUNFKCJB
WElzb2xhdGVkVHJlZTo6cmVtb3ZlU3VidHJlZSIpOworICAgIEFYTE9HKG1ha2VTdHJpbmcoIlJl
bW92aW5nIHN1YnRyZWUgZm9yIGF4SUQgIiwgYXhJRCkpOwogICAgIExvY2tIb2xkZXIgbG9ja2Vy
IHsgbV9jaGFuZ2VMb2dMb2NrIH07CiAgICAgbV9wZW5kaW5nU3VidHJlZVJlbW92YWxzLmFwcGVu
ZChheElEKTsKIH0KQEAgLTMyOCw2ICszNDQsNyBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjphcHBs
eVBlbmRpbmdDaGFuZ2VzKCkKICAgICBBWFRSQUNFKCJBWElzb2xhdGVkVHJlZTo6YXBwbHlQZW5k
aW5nQ2hhbmdlcyIpOwogICAgIExvY2tIb2xkZXIgbG9ja2VyIHsgbV9jaGFuZ2VMb2dMb2NrIH07
CiAKKyAgICBBWExPRyhtYWtlU3RyaW5nKCJmb2N1c2VkTm9kZUlEICIsIG1fZm9jdXNlZE5vZGVJ
RCwgIiBwZW5kaW5nRm9jdXNlZE5vZGVJRCAiLCBtX3BlbmRpbmdGb2N1c2VkTm9kZUlEKSk7CiAg
ICAgbV9mb2N1c2VkTm9kZUlEID0gbV9wZW5kaW5nRm9jdXNlZE5vZGVJRDsKIAogICAgIHdoaWxl
IChtX3BlbmRpbmdOb2RlUmVtb3ZhbHMuc2l6ZSgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5t
bSBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVyTWFjLm1tCmluZGV4IGU4MWE5YzI0ODVkYjNiN2Y4OWVhMzNjMWMyYzY5YTY5ZGZj
YjlmMTcuLmQ1NzI1MjE5NjczNDljYjMwMmFmY2Y5N2YzNGQxMDA2NzM4NGUwNTMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dl
YkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCkBAIC0yMjkwLDExICsyMjkwLDEwIEBA
IEFMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewogICAgIEFYVFJBQ0UobWFr
ZVN0cmluZygiV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgYWNjZXNzaWJpbGl0eUF0dHJp
YnV0ZVZhbHVlOiIsIFN0cmluZyhhdHRyaWJ1dGVOYW1lKSkpOwogICAgIGF1dG8qIGJhY2tpbmdP
YmplY3QgPSBzZWxmLnVwZGF0ZU9iamVjdEJhY2tpbmdTdG9yZTsKLSAgICBpZiAoIWJhY2tpbmdP
YmplY3QpIHsKLSAgICAgICAgQVhMT0coIk5vIGJhY2tpbmdPYmplY3QhISEiKTsKKyAgICBBWExP
RygiYmFja2luZ09iamVjdCIpOworICAgIEFYTE9HKGJhY2tpbmdPYmplY3QpOworICAgIGlmICgh
YmFja2luZ09iamVjdCkKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICB9Ci0gICAgQVhMT0coKmJh
Y2tpbmdPYmplY3QpOwogCiAgICAgaWYgKGJhY2tpbmdPYmplY3QtPmlzRGV0YWNoZWRGcm9tUGFy
ZW50KCkpIHsKICAgICAgICAgQVhMT0coImJhY2tpbmdPYmplY3QgaXMgZGV0YWNoZWQgZnJvbSBw
YXJlbnQhISEiKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>399259</attachid>
            <date>2020-05-13 07:35:44 -0700</date>
            <delta_ts>2020-05-14 08:35:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-211790-20200513103543.patch</filename>
            <type>text/plain</type>
            <size>11769</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYxNjEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTY2OTliNjhiMDIzZWQz
MmIxMTkxOGE3OTU5NTYwZjhlZWViNTFiNy4uNzY1NjgzMjZjOTE3Yjk0Yjg2ODg2YzZmNzQwNjhi
ZWU5ODVmMjNiNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDIwLTA1LTEzICBBbmRy
ZXMgR29uemFsZXogIDxhbmRyZXNnXzIyQGFwcGxlLmNvbT4KKworICAgICAgICBBWElzb2xhdGVk
VHJlZTo6dXBkYXRlQ2hpbGRyZW4gbmVlZHMgdG8gYXBwbHkgcGVuZGluZyBjaGFuZ2VzIGJlZm9y
ZSB1cGRhdGluZyB0aGUgZ2l2ZW4gbm9kZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIxMTc5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIENvdmVyZWQgYnkgbXVsdGlwbGUgdGVzdHMuCisKKyAgICAgICAg
QVhJc29sYXRlZFRyZWU6OnVwZGF0ZUNoaWxkcmVuIG1heSBiZSBmaXJlZCBmb3IgYW4gaXNvbGF0
ZWQgb2JqZWN0IHRoYXQKKyAgICAgICAgaXMgc3RpbGwgaW4gdGhlIHBlbmRpbmcgY2hhbmdlcyBs
aXN0LCBhbmQgdGh1cyBub2RlRm9ySUQgd291bGQgZmFpbCwKKyAgICAgICAgY2F1c2luZyB0aGUg
aXNvbGF0ZWQgdHJlZSB0byBub3QgYmUgdXBkYXRlZC4gVGhpcyBwYXRjaCBjYWxscworICAgICAg
ICBhcHBseVBlbmRpbmdDaGFuZ2VzIGJlZm9yZSB1cGRhdGluZyB0aGUgZ2l2ZW4gbm9kZSdzIGNo
aWxkcmVuLgorICAgICAgICBBZGRpdGlvbmFsIGxvZ2dpbmcgd2FzIGFkZGVkIGluY2x1ZGluZyB0
aGUgbG9nZ2luZyBvZiB0aGUgQVhPYmplY3RDYWNoZQorICAgICAgICBvYmplY3QgaGllcmFyY2h5
LgorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpBWExvZ2dlcjo6bG9nKToKKyAgICAgICAgKFdlYkNvcmU6Om9wZXJhdG9yPDwpOgorICAg
ICAgICAqIGFjY2Vzc2liaWxpdHkvQVhMb2dnZXIuaDoKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5
L0FYT2JqZWN0Q2FjaGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6cmVt
b3ZlKToKKyAgICAgICAgKFdlYkNvcmU6OkFYT2JqZWN0Q2FjaGU6OnBvc3ROb3RpZmljYXRpb24p
OgorICAgICAgICAoV2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6cGVyZm9ybURlZmVycmVkQ2FjaGVV
cGRhdGUpOgorICAgICAgICAoV2ViQ29yZTo6QVhPYmplY3RDYWNoZTo6dXBkYXRlSXNvbGF0ZWRU
cmVlKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuaDoKKyAgICAgICAg
KiBhY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlTm9kZSk6CisgICAgICAgIChXZWJDb3Jl
OjpBWElzb2xhdGVkVHJlZTo6dXBkYXRlU3VidHJlZSk6CisgICAgICAgIChXZWJDb3JlOjpBWElz
b2xhdGVkVHJlZTo6dXBkYXRlQ2hpbGRyZW4pOgorICAgICAgICAoV2ViQ29yZTo6QVhJc29sYXRl
ZFRyZWU6OmZvY3VzZWROb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlOjpy
ZW1vdmVOb2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlOjpyZW1vdmVTdWJ0
cmVlKToKKyAgICAgICAgKFdlYkNvcmU6OkFYSXNvbGF0ZWRUcmVlOjphcHBseVBlbmRpbmdDaGFu
Z2VzKToKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0
V3JhcHBlck1hYy5tbToKKyAgICAgICAgKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIg
YWNjZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOl0pOgorCiAyMDIwLTA1LTEzICBaYW4gRG9iZXJz
ZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKHIyNjEwMjMp
OiBbR1RLXVtXUEVdIFNldmVyYWwgV2ViR0wgdGVzdHMgYXJlIGZhaWxpbmcKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhMb2dnZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5jcHAKaW5kZXggMzY2MjA5OGFhODgwOTg3ZjRjZDJj
ZTc2MWE2YmRkZTQ4ZjI2MjVhNy4uMmM0ZTU5ZTBkMzRlMzhlNmFlNGE0ZGE4ZDNhZDk1MjA2Yzlj
MTAyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5jcHAKQEAgLTI5
LDYgKzI5LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJBWExvZ2dlci5oIgog
CisjaW5jbHVkZSAiQVhPYmplY3RDYWNoZS5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNs
dWRlIDx3dGYvdGV4dC9UZXh0U3RyZWFtLmg+CiAKQEAgLTU5LDEwICs2MCwxNSBAQCB2b2lkIEFY
TG9nZ2VyOjpsb2coY29uc3QgU3RyaW5nJiBtZXNzYWdlKQogI2VuZGlmCiB9CiAKLXZvaWQgQVhM
b2dnZXI6OmxvZyhjb25zdCBBWENvcmVPYmplY3QmIG9iamVjdCkKK3ZvaWQgQVhMb2dnZXI6Omxv
Zyhjb25zdCBSZWZQdHI8QVhDb3JlT2JqZWN0PiYgb2JqZWN0KQogewogICAgIFRleHRTdHJlYW0g
c3RyZWFtKFRleHRTdHJlYW06OkxpbmVNb2RlOjpNdWx0aXBsZUxpbmUpOwotICAgIHN0cmVhbSA8
PCBvYmplY3Q7CisKKyAgICBpZiAob2JqZWN0KQorICAgICAgICBzdHJlYW0gPDwgKm9iamVjdDsK
KyAgICBlbHNlCisgICAgICAgIHN0cmVhbSA8PCAibnVsbCI7CisKICAgICBMT0coQWNjZXNzaWJp
bGl0eSwgIiVzIiwgc3RyZWFtLnJlbGVhc2UoKS51dGY4KCkuZGF0YSgpKTsKIH0KIApAQCAtMTAx
LDYgKzEwNywxMyBAQCB2b2lkIEFYTG9nZ2VyOjpsb2coQVhJc29sYXRlZFRyZWUmIHRyZWUpCiB9
CiAjZW5kaWYKIAordm9pZCBBWExvZ2dlcjo6bG9nKEFYT2JqZWN0Q2FjaGUmIGF4T2JqZWN0Q2Fj
aGUpCit7CisgICAgVGV4dFN0cmVhbSBzdHJlYW0oVGV4dFN0cmVhbTo6TGluZU1vZGU6Ok11bHRp
cGxlTGluZSk7CisgICAgc3RyZWFtIDw8IGF4T2JqZWN0Q2FjaGU7CisgICAgTE9HKEFjY2Vzc2li
aWxpdHksICIlcyIsIHN0cmVhbS5yZWxlYXNlKCkudXRmOCgpLmRhdGEoKSk7Cit9CisKIFRleHRT
dHJlYW0mIG9wZXJhdG9yPDwoVGV4dFN0cmVhbSYgc3RyZWFtLCBBY2Nlc3NpYmlsaXR5Um9sZSBy
b2xlKQogewogICAgIHN3aXRjaCAocm9sZSkgewpAQCAtNzAwLDQgKzcxMywxNyBAQCBUZXh0U3Ry
ZWFtJiBvcGVyYXRvcjw8KFRleHRTdHJlYW0mIHN0cmVhbSwgQVhJc29sYXRlZFRyZWUmIHRyZWUp
CiB9CiAjZW5kaWYKIAorVGV4dFN0cmVhbSYgb3BlcmF0b3I8PChUZXh0U3RyZWFtJiBzdHJlYW0s
IEFYT2JqZWN0Q2FjaGUmIGF4T2JqZWN0Q2FjaGUpCit7CisgICAgVGV4dFN0cmVhbTo6R3JvdXBT
Y29wZSBncm91cFNjb3BlKHN0cmVhbSk7CisgICAgc3RyZWFtIDw8ICJBWE9iamVjdENhY2hlICIg
PDwgJmF4T2JqZWN0Q2FjaGU7CisKKyAgICBpZiAoYXV0byogcm9vdCA9IGF4T2JqZWN0Q2FjaGUu
Z2V0KGF4T2JqZWN0Q2FjaGUuZG9jdW1lbnQoKS52aWV3KCkpKQorICAgICAgICBBWExvZ2dlcjo6
YWRkKHN0cmVhbSwgcm9vdCwgdHJ1ZSk7CisgICAgZWxzZQorICAgICAgICBzdHJlYW0gPDwgIk5v
IHJvb3QhIjsKKworICAgIHJldHVybiBzdHJlYW07Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhMb2dnZXIuaCBi
L1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhMb2dnZXIuaAppbmRleCA1YTJkYzZhMWU3
ZmE5NTk2NTMwNzA1MjA4YzRjZTA0OTk2YjNjYjI1Li5kOWE2MDFjOWQyMmY1NmNlOTMwMDY5NDk2
YTg3ODVhN2ExYTYwZTRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FYTG9nZ2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWExvZ2dlci5o
CkBAIC0zNiwxMSArMzYsMTIgQEAgcHVibGljOgogICAgIEFYTG9nZ2VyKGNvbnN0IFN0cmluZyYg
bWV0aG9kTmFtZSk7CiAgICAgfkFYTG9nZ2VyKCk7CiAgICAgc3RhdGljIHZvaWQgbG9nKGNvbnN0
IFN0cmluZyYpOwotICAgIHN0YXRpYyB2b2lkIGxvZyhjb25zdCBBWENvcmVPYmplY3QmKTsKKyAg
ICBzdGF0aWMgdm9pZCBsb2coY29uc3QgUmVmUHRyPEFYQ29yZU9iamVjdD4mKTsKICAgICBzdGF0
aWMgdm9pZCBsb2coY29uc3Qgc3RkOjpwYWlyPFJlZlB0cjxBWENvcmVPYmplY3Q+LCBBWE9iamVj
dENhY2hlOjpBWE5vdGlmaWNhdGlvbj4mKTsKICNpZiBFTkFCTEUoQUNDRVNTSUJJTElUWV9JU09M
QVRFRF9UUkVFKQogICAgIHN0YXRpYyB2b2lkIGxvZyhBWElzb2xhdGVkVHJlZSYpOwogI2VuZGlm
CisgICAgc3RhdGljIHZvaWQgbG9nKEFYT2JqZWN0Q2FjaGUmKTsKICAgICBzdGF0aWMgdm9pZCBh
ZGQoVGV4dFN0cmVhbSYsIGNvbnN0IFJlZlB0cjxBWENvcmVPYmplY3Q+JiwgYm9vbCByZWN1cnNp
dmUgPSBmYWxzZSk7CiBwcml2YXRlOgogICAgIFN0cmluZyBtX21ldGhvZE5hbWU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FYT2JqZWN0Q2FjaGUuY3BwIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmNwcAppbmRleCBiMzUwYTM0
ZmQ0MWUxNTY5ZGU0Y2ViNmYzNTM2MWUyZDUwMjI4M2IzLi42OTY3ZTY2NjhjMTIzZDhjNTQyYTll
MmM0MmFlN2E3MTA5YjgwMjJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L0FYT2JqZWN0Q2FjaGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QVhPYmplY3RDYWNoZS5jcHAKQEAgLTgzMyw2ICs4MzMsOSBAQCBBY2Nlc3NpYmlsaXR5T2JqZWN0
KiBBWE9iamVjdENhY2hlOjpnZXRPckNyZWF0ZShBY2Nlc3NpYmlsaXR5Um9sZSByb2xlKQogCiB2
b2lkIEFYT2JqZWN0Q2FjaGU6OnJlbW92ZShBWElEIGF4SUQpCiB7CisgICAgQVhUUkFDRSgiQVhP
YmplY3RDYWNoZTo6cmVtb3ZlIik7CisgICAgQVhMT0cobWFrZVN0cmluZygiQVhJRCAiLCBheElE
KSk7CisKICAgICBpZiAoIWF4SUQpCiAgICAgICAgIHJldHVybjsKIApAQCAtMTExNCw2ICsxMTE3
LDkgQEAgdm9pZCBBWE9iamVjdENhY2hlOjpwb3N0Tm90aWZpY2F0aW9uKE5vZGUqIG5vZGUsIEFY
Tm90aWZpY2F0aW9uIG5vdGlmaWNhdGlvbiwgUG8KIAogdm9pZCBBWE9iamVjdENhY2hlOjpwb3N0
Tm90aWZpY2F0aW9uKEFYQ29yZU9iamVjdCogb2JqZWN0LCBEb2N1bWVudCogZG9jdW1lbnQsIEFY
Tm90aWZpY2F0aW9uIG5vdGlmaWNhdGlvbiwgUG9zdFRhcmdldCBwb3N0VGFyZ2V0LCBQb3N0VHlw
ZSBwb3N0VHlwZSkKIHsKKyAgICBBWFRSQUNFKCJBWE9iamVjdENhY2hlOjpwb3N0Tm90aWZpY2F0
aW9uIik7CisgICAgQVhMT0coc3RkOjptYWtlX3BhaXIob2JqZWN0LCBub3RpZmljYXRpb24pKTsK
KwogICAgIHN0b3BDYWNoaW5nQ29tcHV0ZWRPYmplY3RBdHRyaWJ1dGVzKCk7CiAKICAgICBpZiAo
b2JqZWN0ICYmIHBvc3RUYXJnZXQgPT0gVGFyZ2V0T2JzZXJ2YWJsZVBhcmVudCkKQEAgLTMwMzEs
NiArMzAzNyw3IEBAIHZvaWQgQVhPYmplY3RDYWNoZTo6cGVyZm9ybUNhY2hlVXBkYXRlVGltZXJG
aXJlZCgpCiAgICAgCiB2b2lkIEFYT2JqZWN0Q2FjaGU6OnBlcmZvcm1EZWZlcnJlZENhY2hlVXBk
YXRlKCkKIHsKKyAgICBBWFRSQUNFKCJBWE9iamVjdENhY2hlOjpwZXJmb3JtRGVmZXJyZWRDYWNo
ZVVwZGF0ZSIpOwogICAgIGlmIChtX3BlcmZvcm1pbmdEZWZlcnJlZENhY2hlVXBkYXRlKQogICAg
ICAgICByZXR1cm47CiAKQEAgLTMxMDcsNiArMzExNCw4IEBAIHZvaWQgQVhPYmplY3RDYWNoZTo6
dXBkYXRlSXNvbGF0ZWRUcmVlKEFYQ29yZU9iamVjdCYgb2JqZWN0LCBBWE5vdGlmaWNhdGlvbiBu
b3RpCiB7CiAgICAgQVhUUkFDRSgiQVhPYmplY3RDYWNoZTo6dXBkYXRlSXNvbGF0ZWRUcmVlIik7
CiAgICAgQVhMT0coc3RkOjptYWtlX3BhaXIoJm9iamVjdCwgbm90aWZpY2F0aW9uKSk7CisgICAg
QVhMT0coKnRoaXMpOworCiAgICAgaWYgKCFtX3BhZ2VJRCkKICAgICAgICAgcmV0dXJuOwogCkBA
IC0zMTQwLDYgKzMxNDksOCBAQCBzdGF0aWMgYm9vbCBhcHBlbmRJZk5vdENvbnRhaW5zTWF0Y2hp
bmcoVmVjdG9yPFQ+JiB2ZWN0b3IsIGNvbnN0IFQmIHZhbHVlLCBGIG1hdAogdm9pZCBBWE9iamVj
dENhY2hlOjp1cGRhdGVJc29sYXRlZFRyZWUoY29uc3QgVmVjdG9yPHN0ZDo6cGFpcjxSZWZQdHI8
QVhDb3JlT2JqZWN0PiwgQVhOb3RpZmljYXRpb24+PiYgbm90aWZpY2F0aW9ucykKIHsKICAgICBB
WFRSQUNFKCJBWE9iamVjdENhY2hlOjp1cGRhdGVJc29sYXRlZFRyZWUiKTsKKyAgICBBWExPRygq
dGhpcyk7CisKICAgICBpZiAoIW1fcGFnZUlEKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhPYmplY3RDYWNoZS5oIGIvU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVjdENhY2hlLmgKaW5kZXggNDZiZGY0MWJlZjdm
NmY4YzA5MDFlNDg5MGJiYTcyNzVmNGNiNzM0Mi4uN2E3OTBkNmM2YTE1NTk2ZDk0M2Y2NWQwYzZj
NTQ2YTJiY2JiNjUxMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9B
WE9iamVjdENhY2hlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWE9iamVj
dENhY2hlLmgKQEAgLTE0Myw2ICsxNDMsNyBAQCBlbnVtIFBvc3RUeXBlIHsgUG9zdFN5bmNocm9u
b3VzbHksIFBvc3RBc3luY2hyb25vdXNseSB9OwogCiBjbGFzcyBBWE9iamVjdENhY2hlIHsKICAg
ICBXVEZfTUFLRV9OT05DT1BZQUJMRShBWE9iamVjdENhY2hlKTsgV1RGX01BS0VfRkFTVF9BTExP
Q0FURUQ7CisgICAgZnJpZW5kIFdURjo6VGV4dFN0cmVhbSYgb3BlcmF0b3I8PChXVEY6OlRleHRT
dHJlYW0mLCBBWE9iamVjdENhY2hlJik7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgQVhPYmplY3RD
YWNoZShEb2N1bWVudCYpOwogICAgIH5BWE9iamVjdENhY2hlKCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJlZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkVHJl
ZS5jcHAKaW5kZXggM2JiNDNiYTRkYWJjNmJlMmY4ZGJjMTIyNWM2ZjhmYTM2NTYzZjg2ZC4uMjY1
ZWExZTcwMjAxZjY4MjQzNjQ3Zjk4ZmFhZWZkZDQ4YmMxMmY4NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZFRyZWUuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL0FYSXNvbGF0ZWRU
cmVlLmNwcApAQCAtMTk3LDYgKzE5Nyw3IEBAIFJlZjxBWElzb2xhdGVkT2JqZWN0PiBBWElzb2xh
dGVkVHJlZTo6Y3JlYXRlU3VidHJlZShBWENvcmVPYmplY3QmIGF4T2JqZWN0LCBBWElECiB2b2lk
IEFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVOb2RlKEFYQ29yZU9iamVjdCYgYXhPYmplY3QpCiB7CiAg
ICAgQVhUUkFDRSgiQVhJc29sYXRlZFRyZWU6OnVwZGF0ZU5vZGUiKTsKKyAgICBBWExPRygmYXhP
YmplY3QpOwogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAgICAgQVhJRCBheElEID0gYXhP
YmplY3Qub2JqZWN0SUQoKTsKICAgICBhdXRvKiBheFBhcmVudCA9IGF4T2JqZWN0LnBhcmVudE9i
amVjdCgpOwpAQCAtMjE4LDYgKzIxOSw3IEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OnVwZGF0ZU5v
ZGUoQVhDb3JlT2JqZWN0JiBheE9iamVjdCkKIHZvaWQgQVhJc29sYXRlZFRyZWU6OnVwZGF0ZVN1
YnRyZWUoQVhDb3JlT2JqZWN0JiBheE9iamVjdCkKIHsKICAgICBBWFRSQUNFKCJBWElzb2xhdGVk
VHJlZTo6dXBkYXRlU3VidHJlZSIpOworICAgIEFYTE9HKCZheE9iamVjdCk7CiAgICAgQVNTRVJU
KGlzTWFpblRocmVhZCgpKTsKICAgICByZW1vdmVTdWJ0cmVlKGF4T2JqZWN0Lm9iamVjdElEKCkp
OwogICAgIGF1dG8qIGF4UGFyZW50ID0gYXhPYmplY3QucGFyZW50T2JqZWN0KCk7CkBAIC0yMjgs
MTUgKzIzMCwyMiBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVTdWJ0cmVlKEFYQ29yZU9i
amVjdCYgYXhPYmplY3QpCiB2b2lkIEFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVDaGlsZHJlbihBWENv
cmVPYmplY3QmIGF4T2JqZWN0KQogewogICAgIEFYVFJBQ0UoIkFYSXNvbGF0ZWRUcmVlOjp1cGRh
dGVDaGlsZHJlbiIpOworICAgIEFYTE9HKCJGb3IgQVhPYmplY3Q6Iik7CisgICAgQVhMT0coJmF4
T2JqZWN0KTsKICAgICBBU1NFUlQoaXNNYWluVGhyZWFkKCkpOworCiAgICAgaWYgKCFheE9iamVj
dC5kb2N1bWVudCgpIHx8ICFheE9iamVjdC5kb2N1bWVudCgpLT5oYXNMaXZpbmdSZW5kZXJUcmVl
KCkpCiAgICAgICAgIHJldHVybjsKIAogICAgIEFYSUQgYXhPYmplY3RJRCA9IGF4T2JqZWN0Lm9i
amVjdElEKCk7CisKKyAgICBhcHBseVBlbmRpbmdDaGFuZ2VzKCk7CiAgICAgTG9ja0hvbGRlciBs
b2NrZXIgeyBtX2NoYW5nZUxvZ0xvY2sgfTsKICAgICBhdXRvIG9iamVjdCA9IG5vZGVGb3JJRChh
eE9iamVjdElEKTsKLSAgICBpZiAoIW9iamVjdCkKKyAgICBpZiAoIW9iamVjdCkgeworICAgICAg
ICBBWExPRygiTm8gYXNzb2NpYXRlZCBpc29sYXRlZCBvYmplY3QhIik7CiAgICAgICAgIHJldHVy
bjsgLy8gbm90aGluZyB0byB1cGRhdGUuCisgICAgfQogCiAgICAgYXV0byByZW1vdmFscyA9IG9i
amVjdC0+bV9jaGlsZHJlbklEczsKICAgICBsb2NrZXIudW5sb2NrRWFybHkoKTsKQEAgLTI1MCw2
ICsyNTksOCBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjp1cGRhdGVDaGlsZHJlbihBWENvcmVPYmpl
Y3QmIGF4T2JqZWN0KQogICAgICAgICAgICAgcmVtb3ZhbHMucmVtb3ZlKGluZGV4KTsKICAgICAg
ICAgZWxzZSB7CiAgICAgICAgICAgICAvLyBUaGlzIGlzIGEgbmV3IGNoaWxkLCBhZGQgaXQgdG8g
dGhlIHRyZWUuCisgICAgICAgICAgICBBWExPRygiQWRkaW5nIGEgbmV3IGNoaWxkIGZvcjoiKTsK
KyAgICAgICAgICAgIEFYTE9HKGF4Q2hpbGRyZW5baV0pOwogICAgICAgICAgICAgZ2VuZXJhdGVT
dWJ0cmVlKCpheENoaWxkcmVuW2ldLCBheE9iamVjdElELCB0cnVlKTsKICAgICAgICAgfQogICAg
IH0KQEAgLTI2OCwxMSArMjc5LDEzIEBAIHZvaWQgQVhJc29sYXRlZFRyZWU6OnVwZGF0ZUNoaWxk
cmVuKEFYQ29yZU9iamVjdCYgYXhPYmplY3QpCiAKIFJlZlB0cjxBWElzb2xhdGVkT2JqZWN0PiBB
WElzb2xhdGVkVHJlZTo6Zm9jdXNlZE5vZGUoKQogewotICAgIEFYVFJBQ0UoIkFYSXNvbGF0ZWRU
cmVlOjpmb2N1c2VkVUlFbGVtZW50Iik7CisgICAgQVhUUkFDRSgiQVhJc29sYXRlZFRyZWU6OmZv
Y3VzZWROb2RlIik7CiAgICAgLy8gQXBwbHkgcGVuZGluZyBjaGFuZ2VzIGluIGNhc2UgZm9jdXMg
aGFzIGNoYW5nZWQgYW5kIGhhc24ndCBiZWVuIHVwZGF0ZWQuCiAgICAgYXBwbHlQZW5kaW5nQ2hh
bmdlcygpOwogICAgIExvY2tIb2xkZXIgbG9ja2VyIHsgbV9jaGFuZ2VMb2dMb2NrIH07CiAgICAg
QVhMT0cobWFrZVN0cmluZygiZm9jdXNlZE5vZGVJRCAiLCBtX2ZvY3VzZWROb2RlSUQpKTsKKyAg
ICBBWExPRygiZm9jdXNlZCBub2RlOiIpOworICAgIEFYTE9HKG5vZGVGb3JJRChtX2ZvY3VzZWRO
b2RlSUQpKTsKICAgICByZXR1cm4gbm9kZUZvcklEKG1fZm9jdXNlZE5vZGVJRCk7CiB9CiAKQEAg
LTMwNSw2ICszMTgsOCBAQCB2b2lkIEFYSXNvbGF0ZWRUcmVlOjpzZXRGb2N1c2VkTm9kZUlEKEFY
SUQgYXhJRCkKIHZvaWQgQVhJc29sYXRlZFRyZWU6OnJlbW92ZU5vZGUoQVhJRCBheElEKQogewog
ICAgIEFYVFJBQ0UoIkFYSXNvbGF0ZWRUcmVlOjpyZW1vdmVOb2RlIik7CisgICAgQVhMT0cobWFr
ZVN0cmluZygiQVhJRCAiLCBheElEKSk7CisKICAgICBMb2NrSG9sZGVyIGxvY2tlciB7IG1fY2hh
bmdlTG9nTG9jayB9OwogICAgIG1fcGVuZGluZ05vZGVSZW1vdmFscy5hcHBlbmQoYXhJRCk7CiB9
CkBAIC0zMTIsNiArMzI3LDcgQEAgdm9pZCBBWElzb2xhdGVkVHJlZTo6cmVtb3ZlTm9kZShBWElE
IGF4SUQpCiB2b2lkIEFYSXNvbGF0ZWRUcmVlOjpyZW1vdmVTdWJ0cmVlKEFYSUQgYXhJRCkKIHsK
ICAgICBBWFRSQUNFKCJBWElzb2xhdGVkVHJlZTo6cmVtb3ZlU3VidHJlZSIpOworICAgIEFYTE9H
KG1ha2VTdHJpbmcoIlJlbW92aW5nIHN1YnRyZWUgZm9yIGF4SUQgIiwgYXhJRCkpOwogICAgIExv
Y2tIb2xkZXIgbG9ja2VyIHsgbV9jaGFuZ2VMb2dMb2NrIH07CiAgICAgbV9wZW5kaW5nU3VidHJl
ZVJlbW92YWxzLmFwcGVuZChheElEKTsKIH0KQEAgLTMyOCw2ICszNDQsNyBAQCB2b2lkIEFYSXNv
bGF0ZWRUcmVlOjphcHBseVBlbmRpbmdDaGFuZ2VzKCkKICAgICBBWFRSQUNFKCJBWElzb2xhdGVk
VHJlZTo6YXBwbHlQZW5kaW5nQ2hhbmdlcyIpOwogICAgIExvY2tIb2xkZXIgbG9ja2VyIHsgbV9j
aGFuZ2VMb2dMb2NrIH07CiAKKyAgICBBWExPRyhtYWtlU3RyaW5nKCJmb2N1c2VkTm9kZUlEICIs
IG1fZm9jdXNlZE5vZGVJRCwgIiBwZW5kaW5nRm9jdXNlZE5vZGVJRCAiLCBtX3BlbmRpbmdGb2N1
c2VkTm9kZUlEKSk7CiAgICAgbV9mb2N1c2VkTm9kZUlEID0gbV9wZW5kaW5nRm9jdXNlZE5vZGVJ
RDsKIAogICAgIHdoaWxlIChtX3BlbmRpbmdOb2RlUmVtb3ZhbHMuc2l6ZSgpKSB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2Jq
ZWN0V3JhcHBlck1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCmluZGV4IGU4MWE5YzI0ODVkYjNiN2Y4OWVh
MzNjMWMyYzY5YTY5ZGZjYjlmMTcuLmQ1NzI1MjE5NjczNDljYjMwMmFmY2Y5N2YzNGQxMDA2NzM4
NGUwNTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFj
Y2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyTWFjLm1tCkBAIC0yMjkw
LDExICsyMjkwLDEwIEBAIEFMTE9XX0RFUFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogewog
ICAgIEFYVFJBQ0UobWFrZVN0cmluZygiV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgYWNj
ZXNzaWJpbGl0eUF0dHJpYnV0ZVZhbHVlOiIsIFN0cmluZyhhdHRyaWJ1dGVOYW1lKSkpOwogICAg
IGF1dG8qIGJhY2tpbmdPYmplY3QgPSBzZWxmLnVwZGF0ZU9iamVjdEJhY2tpbmdTdG9yZTsKLSAg
ICBpZiAoIWJhY2tpbmdPYmplY3QpIHsKLSAgICAgICAgQVhMT0coIk5vIGJhY2tpbmdPYmplY3Qh
ISEiKTsKKyAgICBBWExPRygiYmFja2luZ09iamVjdCIpOworICAgIEFYTE9HKGJhY2tpbmdPYmpl
Y3QpOworICAgIGlmICghYmFja2luZ09iamVjdCkKICAgICAgICAgcmV0dXJuIG5pbDsKLSAgICB9
Ci0gICAgQVhMT0coKmJhY2tpbmdPYmplY3QpOwogCiAgICAgaWYgKGJhY2tpbmdPYmplY3QtPmlz
RGV0YWNoZWRGcm9tUGFyZW50KCkpIHsKICAgICAgICAgQVhMT0coImJhY2tpbmdPYmplY3QgaXMg
ZGV0YWNoZWQgZnJvbSBwYXJlbnQhISEiKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>