<?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>208606</bug_id>
          
          <creation_ts>2020-03-04 14:36:29 -0800</creation_ts>
          <short_desc>[VNE layout] Move visually non-empty content reporting to RenderTreeBuilder</short_desc>
          <delta_ts>2020-03-04 19:46:28 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</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="alan">zalan</reporter>
          <assigned_to name="alan">zalan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1625780</commentid>
    <comment_count>0</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-03-04 14:36:29 -0800</bug_when>
    <thetext>from the renderer c&apos;tors</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625781</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-03-04 14:36:53 -0800</bug_when>
    <thetext>&lt;rdar://problem/60056951&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625783</commentid>
    <comment_count>2</comment_count>
      <attachid>392487</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-03-04 14:42:26 -0800</bug_when>
    <thetext>Created attachment 392487
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625785</commentid>
    <comment_count>3</comment_count>
      <attachid>392487</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-03-04 14:46:40 -0800</bug_when>
    <thetext>Comment on attachment 392487
Patch

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

&gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:925
&gt; +        if (style.visibility() == Visibility::Visible &amp;&amp; !style.fontCascade().isLoadingCustomFonts()) {

The isLoadingCustomFonts() seems wrong. It might be loading custom fonts but rendering with the fallback font, right? There&apos;s CSS to control this.

Also I guess we don&apos;t care about style.visibility() == Hidden on an ancestor?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625786</commentid>
    <comment_count>4</comment_count>
    <who name="alan">zalan</who>
    <bug_when>2020-03-04 14:47:46 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #3)
&gt; Comment on attachment 392487 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=392487&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:925
&gt; &gt; +        if (style.visibility() == Visibility::Visible &amp;&amp; !style.fontCascade().isLoadingCustomFonts()) {
&gt; 
&gt; The isLoadingCustomFonts() seems wrong. It might be loading custom fonts but
&gt; rendering with the fallback font, right? There&apos;s CSS to control this.
&gt; 
&gt; Also I guess we don&apos;t care about style.visibility() == Hidden on an ancestor?
Yeah. This is very basic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625834</commentid>
    <comment_count>5</comment_count>
      <attachid>392503</attachid>
    <who name="alan">zalan</who>
    <bug_when>2020-03-04 16:23:01 -0800</bug_when>
    <thetext>Created attachment 392503
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625924</commentid>
    <comment_count>6</comment_count>
      <attachid>392503</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-04 19:46:26 -0800</bug_when>
    <thetext>Comment on attachment 392503
Patch

Clearing flags on attachment: 392503

Committed r257899: &lt;https://trac.webkit.org/changeset/257899&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1625925</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-03-04 19:46:28 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392487</attachid>
            <date>2020-03-04 14:42:26 -0800</date>
            <delta_ts>2020-03-04 16:22:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208606-20200304144225.patch</filename>
            <type>text/plain</type>
            <size>11225</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3ODQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDM2OTMyMTQxODIyMTY5
MjI0OTg2YjU0MzkxZDU5NmIyNjczMjFjZC4uMTQ4NjhmNDNmZDQ3MjE2M2QzNGQxZjk1YmM2MWNh
MTBkZjhjM2E1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIwLTAzLTA0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1ZORSBsYXlvdXRdIE1vdmUg
dmlzdWFsbHkgbm9uLWVtcHR5IGNvbnRlbnQgcmVwb3J0aW5nIHRvIFJlbmRlclRyZWVCdWlsZGVy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg2MDYK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYwMDU2OTUxPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmUgdGhlIFZORSByZXBvcnRpbmcgbG9naWMg
ZnJvbSB0aGUgYyd0b3JzIHRvIHRoZSBSZW5kZXJUcmVlQnVpbGRlci4KKworICAgICAgICAqIHJl
bmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJFbWJlZGRlZE9iamVjdDo6UmVuZGVyRW1iZWRkZWRPYmplY3QpOgorICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJIVE1MQ2FudmFzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckhUTUxD
YW52YXM6OlJlbmRlckhUTUxDYW52YXMpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUZXh0
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRleHQ6OlJlbmRlclRleHQpOgorICAgICAg
ICAqIHJlbmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZW5kZXJUcmVlQnVpbGRlcjo6YXR0YWNoKToKKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlclRyZWVCdWlsZGVyOjphdHRhY2hJbnRlcm5hbCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUcmVlQnVpbGRlcjo6YXR0YWNoSWdub3JpbmdDb250aW51YXRpb24pOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OnJlcG9ydFZpc3VhbGx5Tm9uRW1wdHlDb250ZW50KToK
KyAgICAgICAgKiByZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuaDoKKyAgICAg
ICAgKiByZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyVHJlZVVwZGF0ZXI6OmNyZWF0ZVJlbmRlcmVyKToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclRyZWVVcGRhdGVyOjpjcmVhdGVUZXh0UmVuZGVyZXIpOgorCiAyMDIwLTAz
LTA0ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KIAogICAgICAgICBBdm9pZCBm
dWxsIHN0eWxlIHJlc29sdXRpb24gb24gRWxlbWVudDo6Zm9jdXMoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckVtYmVkZGVkT2JqZWN0LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5jcHAKaW5kZXggMmQwMGRmZjBi
YTAyNWEyNWM5ZjFlNmM0MjdkMDVkZDc1ODFjMGFjNi4uYzZhOTk2MmM5ZDUwZWYwOWYyZjRiMTZi
MDg0ZWU2OTE0ZWNmNDFhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlckVtYmVkZGVkT2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyRW1iZWRkZWRPYmplY3QuY3BwCkBAIC0xMDQsOCArMTA0LDYgQEAgUmVuZGVyRW1iZWRkZWRP
YmplY3Q6OlJlbmRlckVtYmVkZGVkT2JqZWN0KEhUTUxGcmFtZU93bmVyRWxlbWVudCYgZWxlbWVu
dCwgUmVuZGUKICAgICAsIG1fdW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3JJc1ByZXNzZWQoZmFs
c2UpCiAgICAgLCBtX21vdXNlRG93bldhc0luVW5hdmFpbGFibGVQbHVnaW5JbmRpY2F0b3IoZmFs
c2UpCiB7Ci0gICAgLy8gQWN0dWFsIHNpemUgaXMgbm90IGtub3duIHlldCwgcmVwb3J0IHRoZSBk
ZWZhdWx0IGludHJpbnNpYyBzaXplLgotICAgIHZpZXcoKS5mcmFtZVZpZXcoKS5pbmNyZW1lbnRW
aXN1YWxseU5vbkVtcHR5UGl4ZWxDb3VudChyb3VuZGVkSW50U2l6ZShpbnRyaW5zaWNTaXplKCkp
KTsKIH0KIAogUmVuZGVyRW1iZWRkZWRPYmplY3Q6On5SZW5kZXJFbWJlZGRlZE9iamVjdCgpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySFRNTENhbnZhcy5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVySFRNTENhbnZhcy5jcHAKaW5kZXggNWEz
MDg2ZWE1ZDQ3NjlhNWEzNDJkYTUwYjE3M2IzNDM3MjI0NDlmOS4uZDE5MmM3MzEzYTQxNTI1ZDJj
YTI1NWY2ZTIzZWZiYTk0NDg1ZGRkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlckhUTUxDYW52YXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJIVE1MQ2FudmFzLmNwcApAQCAtNDgsOCArNDgsNiBAQCBXVEZfTUFLRV9JU09fQUxMT0NB
VEVEX0lNUEwoUmVuZGVySFRNTENhbnZhcyk7CiBSZW5kZXJIVE1MQ2FudmFzOjpSZW5kZXJIVE1M
Q2FudmFzKEhUTUxDYW52YXNFbGVtZW50JiBlbGVtZW50LCBSZW5kZXJTdHlsZSYmIHN0eWxlKQog
ICAgIDogUmVuZGVyUmVwbGFjZWQoZWxlbWVudCwgV1RGTW92ZShzdHlsZSksIGVsZW1lbnQuc2l6
ZSgpKQogewotICAgIC8vIEFjdHVhbCBzaXplIGlzIG5vdCBrbm93biB5ZXQsIHJlcG9ydCB0aGUg
ZGVmYXVsdCBpbnRyaW5zaWMgc2l6ZS4KLSAgICB2aWV3KCkuZnJhbWVWaWV3KCkuaW5jcmVtZW50
VmlzdWFsbHlOb25FbXB0eVBpeGVsQ291bnQocm91bmRlZEludFNpemUoaW50cmluc2ljU2l6ZSgp
KSk7CiB9CiAKIEhUTUxDYW52YXNFbGVtZW50JiBSZW5kZXJIVE1MQ2FudmFzOjpjYW52YXNFbGVt
ZW50KCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0LmNwcAppbmRleCA0
MjZlY2E0MTYzMjdlMzlmMzFiOWY0NDA5YTYzNDZkMGFmYWE1ZTE0Li5iNjFiZjZjMTA5ZDE0MWY1
MThiYzk5NTAwOTU5ZjVjNjNmMmI2MzEwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyVGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRleHQuY3BwCkBAIC0xOTUsMTYgKzE5NSw2IEBAIGlubGluZSBSZW5kZXJUZXh0OjpSZW5kZXJU
ZXh0KE5vZGUmIG5vZGUsIGNvbnN0IFN0cmluZyYgdGV4dCkKICAgICBBU1NFUlQoIW1fdGV4dC5p
c051bGwoKSk7CiAgICAgc2V0SXNUZXh0KCk7CiAgICAgbV9jYW5Vc2VTaW1wbGVGb250Q29kZVBh
dGggPSBjb21wdXRlQ2FuVXNlU2ltcGxlRm9udENvZGVQYXRoKCk7Ci0KLSAgICAvLyBGSVhNRTog
RmluZCBvdXQgaG93IHRvIGluY3JlbWVudCB0aGUgdmlzdWFsbHkgbm9uIGVtcHR5IGNoYXJhY3Rl
ciBjb3VudCB3aGVuIHRoZSBmb250IGJlY29tZXMgYXZhaWxhYmxlLgotICAgIGF1dG8gaXNUZXh0
VmlzaWJsZSA9IGZhbHNlOwotICAgIGlmIChhdXRvKiBwYXJlbnRFbGVtZW50ID0gbm9kZS5wYXJl
bnRFbGVtZW50KCkpIHsKLSAgICAgICAgYXV0byogc3R5bGUgPSBwYXJlbnRFbGVtZW50LT5yZW5k
ZXJlcigpID8gJnBhcmVudEVsZW1lbnQtPnJlbmRlcmVyKCktPnN0eWxlKCkgOiBudWxscHRyOwot
ICAgICAgICBpc1RleHRWaXNpYmxlID0gc3R5bGUgJiYgc3R5bGUtPnZpc2liaWxpdHkoKSA9PSBW
aXNpYmlsaXR5OjpWaXNpYmxlICYmICFzdHlsZS0+Zm9udENhc2NhZGUoKS5pc0xvYWRpbmdDdXN0
b21Gb250cygpOwotICAgIH0KLQotICAgIGlmIChpc1RleHRWaXNpYmxlKQotICAgICAgICB2aWV3
KCkuZnJhbWVWaWV3KCkuaW5jcmVtZW50VmlzdWFsbHlOb25FbXB0eUNoYXJhY3RlckNvdW50KHRl
eHQpOwogfQogCiBSZW5kZXJUZXh0OjpSZW5kZXJUZXh0KFRleHQmIHRleHROb2RlLCBjb25zdCBT
dHJpbmcmIHRleHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRp
bmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0
aW5nL1JlbmRlclRyZWVCdWlsZGVyLmNwcAppbmRleCA4YTVmZmI0NjM2YjRiMmYyMDQ2ODY5ZDJk
Zjg1MDJhNzJkZmJiNDFmLi41ZWMzYzBjMTI5NWNjMzFhOWI3ZWZhZTBkYjQyYTIyY2Q1Mjg2M2Vj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJl
ZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5k
ZXJUcmVlQnVpbGRlci5jcHAKQEAgLTMyLDEzICszMiwxNiBAQAogI2luY2x1ZGUgIlJlbmRlckJ1
dHRvbi5oIgogI2luY2x1ZGUgIlJlbmRlckNvdW50ZXIuaCIKICNpbmNsdWRlICJSZW5kZXJFbGVt
ZW50LmgiCisjaW5jbHVkZSAiUmVuZGVyRW1iZWRkZWRPYmplY3QuaCIKICNpbmNsdWRlICJSZW5k
ZXJGdWxsU2NyZWVuLmgiCiAjaW5jbHVkZSAiUmVuZGVyR3JpZC5oIgorI2luY2x1ZGUgIlJlbmRl
ckhUTUxDYW52YXMuaCIKICNpbmNsdWRlICJSZW5kZXJMaW5lQnJlYWsuaCIKICNpbmNsdWRlICJS
ZW5kZXJNYXRoTUxGZW5jZWQuaCIKICNpbmNsdWRlICJSZW5kZXJNZW51TGlzdC5oIgogI2luY2x1
ZGUgIlJlbmRlck11bHRpQ29sdW1uRmxvdy5oIgogI2luY2x1ZGUgIlJlbmRlck11bHRpQ29sdW1u
U3Bhbm5lclBsYWNlaG9sZGVyLmgiCisjaW5jbHVkZSAiUmVuZGVyUmVwbGFjZWQuaCIKICNpbmNs
dWRlICJSZW5kZXJSdWJ5LmgiCiAjaW5jbHVkZSAiUmVuZGVyUnVieUJhc2UuaCIKICNpbmNsdWRl
ICJSZW5kZXJSdWJ5UnVuLmgiCkBAIC0xOTAsNiArMTkzLDEyIEBAIHZvaWQgUmVuZGVyVHJlZUJ1
aWxkZXI6OmRlc3Ryb3koUmVuZGVyT2JqZWN0JiByZW5kZXJlcikKIH0KIAogdm9pZCBSZW5kZXJU
cmVlQnVpbGRlcjo6YXR0YWNoKFJlbmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVyUHRyPFJlbmRl
ck9iamVjdD4gY2hpbGQsIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQpCit7CisgICAgcmVwb3J0
VmlzdWFsbHlOb25FbXB0eUNvbnRlbnQocGFyZW50LCAqY2hpbGQpOworICAgIGF0dGFjaEludGVy
bmFsKHBhcmVudCwgV1RGTW92ZShjaGlsZCksIGJlZm9yZUNoaWxkKTsKK30KKwordm9pZCBSZW5k
ZXJUcmVlQnVpbGRlcjo6YXR0YWNoSW50ZXJuYWwoUmVuZGVyRWxlbWVudCYgcGFyZW50LCBSZW5k
ZXJQdHI8UmVuZGVyT2JqZWN0PiBjaGlsZCwgUmVuZGVyT2JqZWN0KiBiZWZvcmVDaGlsZCkKIHsK
ICAgICBhdXRvIGluc2VydFJlY3Vyc2l2ZUlmTmVlZGVkID0gWyZdKFJlbmRlckVsZW1lbnQmIHBh
cmVudENhbmRpZGF0ZSkgewogICAgICAgICBpZiAoJnBhcmVudCA9PSAmcGFyZW50Q2FuZGlkYXRl
KSB7CkBAIC0yMDEsNyArMjEwLDcgQEAgdm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6YXR0YWNoKFJl
bmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gY2gKICAgICAgICAg
ICAgIGF0dGFjaFRvUmVuZGVyRWxlbWVudChwYXJlbnQsIFdURk1vdmUoY2hpbGQpLCBiZWZvcmVD
aGlsZCk7CiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIH0KLSAgICAgICAgYXR0YWNoKHBh
cmVudENhbmRpZGF0ZSwgV1RGTW92ZShjaGlsZCksIGJlZm9yZUNoaWxkKTsKKyAgICAgICAgYXR0
YWNoSW50ZXJuYWwocGFyZW50Q2FuZGlkYXRlLCBXVEZNb3ZlKGNoaWxkKSwgYmVmb3JlQ2hpbGQp
OwogICAgIH07CiAKICAgICBBU1NFUlQoJnBhcmVudC52aWV3KCkgPT0gJm1fdmlldyk7CkBAIC0z
NDIsNyArMzUxLDcgQEAgdm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6YXR0YWNoSWdub3JpbmdDb250
aW51YXRpb24oUmVuZGVyRWxlbWVudCYgcGFyZW50LCBSZW5kZXIKICAgICAgICAgcmV0dXJuOwog
ICAgIH0KIAotICAgIGF0dGFjaChwYXJlbnQsIFdURk1vdmUoY2hpbGQpLCBiZWZvcmVDaGlsZCk7
CisgICAgYXR0YWNoSW50ZXJuYWwocGFyZW50LCBXVEZNb3ZlKGNoaWxkKSwgYmVmb3JlQ2hpbGQp
OwogfQogCiBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBSZW5kZXJUcmVlQnVpbGRlcjo6ZGV0YWNo
KFJlbmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVyT2JqZWN0JiBjaGlsZCwgQ2FuQ29sbGFwc2VB
bm9ueW1vdXNCbG9jayBjYW5Db2xsYXBzZUFub255bW91c0Jsb2NrKQpAQCAtMzg2LDExICszOTUs
NiBAQCBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBSZW5kZXJUcmVlQnVpbGRlcjo6ZGV0YWNoKFJl
bmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVyTwogICAgIHJldHVybiBkZXRhY2hGcm9tUmVuZGVy
RWxlbWVudChwYXJlbnQsIGNoaWxkKTsKIH0KIAotdm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6YXR0
YWNoKFJlbmRlclRyZWVQb3NpdGlvbiYgcG9zaXRpb24sIFJlbmRlclB0cjxSZW5kZXJPYmplY3Q+
IGNoaWxkKQotewotICAgIGF0dGFjaChwb3NpdGlvbi5wYXJlbnQoKSwgV1RGTW92ZShjaGlsZCks
IHBvc2l0aW9uLm5leHRTaWJsaW5nKCkpOwotfQotCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJ
KQogdm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6Y3JlYXRlUGxhY2Vob2xkZXJGb3JGdWxsU2NyZWVu
KFJlbmRlckZ1bGxTY3JlZW4mIHJlbmRlcmVyLCBzdGQ6OnVuaXF1ZV9wdHI8UmVuZGVyU3R5bGU+
IHN0eWxlLCBjb25zdCBMYXlvdXRSZWN0JiBmcmFtZVJlY3QpCiB7CkBAIC05MTMsNCArOTE3LDIz
IEBAIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmF0dGFjaFRvUmVuZGVyR3JpZChSZW5kZXJHcmlk
JiBwYXJlbnQsIFJlbmRlclB0cjxSZW5kZXJPCiAgICAgcGFyZW50LmRpcnR5R3JpZCgpOwogfQog
Cit2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjpyZXBvcnRWaXN1YWxseU5vbkVtcHR5Q29udGVudChj
b25zdCBSZW5kZXJFbGVtZW50JiBwYXJlbnQsIGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQpCit7
CisgICAgaWYgKGlzPFJlbmRlclRleHQ+KGNoaWxkKSkgeworICAgICAgICBhdXRvJiBzdHlsZSA9
IHBhcmVudC5zdHlsZSgpOworICAgICAgICAvLyBGSVhNRTogRmluZCBvdXQgaG93IHRvIGluY3Jl
bWVudCB0aGUgdmlzdWFsbHkgbm9uIGVtcHR5IGNoYXJhY3RlciBjb3VudCB3aGVuIHRoZSBmb250
IGJlY29tZXMgYXZhaWxhYmxlLgorICAgICAgICBpZiAoc3R5bGUudmlzaWJpbGl0eSgpID09IFZp
c2liaWxpdHk6OlZpc2libGUgJiYgIXN0eWxlLmZvbnRDYXNjYWRlKCkuaXNMb2FkaW5nQ3VzdG9t
Rm9udHMoKSkgeworICAgICAgICAgICAgYXV0byYgdGV4dFJlbmRlcmVyID0gZG93bmNhc3Q8UmVu
ZGVyVGV4dD4oY2hpbGQpOworICAgICAgICAgICAgbV92aWV3LmZyYW1lVmlldygpLmluY3JlbWVu
dFZpc3VhbGx5Tm9uRW1wdHlDaGFyYWN0ZXJDb3VudCh0ZXh0UmVuZGVyZXIudGV4dCgpKTsKKyAg
ICAgICAgfQorICAgICAgICByZXR1cm47CisgICAgfQorICAgIGlmIChpczxSZW5kZXJIVE1MQ2Fu
dmFzPihjaGlsZCkgfHwgaXM8UmVuZGVyRW1iZWRkZWRPYmplY3Q+KGNoaWxkKSkgeworICAgICAg
ICAvLyBBY3R1YWwgc2l6ZSBpcyBub3Qga25vd24geWV0LCByZXBvcnQgdGhlIGRlZmF1bHQgaW50
cmluc2ljIHNpemUgZm9yIHJlcGxhY2VkIGVsZW1lbnRzLgorICAgICAgICBhdXRvJiByZXBsYWNl
ZFJlbmRlcmVyID0gZG93bmNhc3Q8UmVuZGVyUmVwbGFjZWQ+KGNoaWxkKTsKKyAgICAgICAgbV92
aWV3LmZyYW1lVmlldygpLmluY3JlbWVudFZpc3VhbGx5Tm9uRW1wdHlQaXhlbENvdW50KHJvdW5k
ZWRJbnRTaXplKHJlcGxhY2VkUmVuZGVyZXIuaW50cmluc2ljU2l6ZSgpKSk7CisgICAgICAgIHJl
dHVybjsKKyAgICB9Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmgKaW5kZXggYWQ4MDA3ZDBjOWM2ZTEzYzhiNWYx
ODBkZjQ1MTUyMDAxNjE2YTQyYy4uMmJmNTkyOTdjNDc5NDk3M2JlZjczZmNkZDQ1YTA4MWE0Nzc3
YmE3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRl
clRyZWVCdWlsZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1Jl
bmRlclRyZWVCdWlsZGVyLmgKQEAgLTQyLDcgKzQyLDYgQEAgcHVibGljOgogICAgIC8vIEZJWE1F
OiBSZW1vdmUuCiAgICAgc3RhdGljIFJlbmRlclRyZWVCdWlsZGVyKiBjdXJyZW50KCkgeyByZXR1
cm4gc19jdXJyZW50OyB9CiAKLSAgICB2b2lkIGF0dGFjaChSZW5kZXJUcmVlUG9zaXRpb24mLCBS
ZW5kZXJQdHI8UmVuZGVyT2JqZWN0Pik7CiAgICAgdm9pZCBhdHRhY2goUmVuZGVyRWxlbWVudCYg
cGFyZW50LCBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiwgUmVuZGVyT2JqZWN0KiBiZWZvcmVDaGls
ZCA9IG51bGxwdHIpOwogCiAgICAgZW51bSBjbGFzcyBDYW5Db2xsYXBzZUFub255bW91c0Jsb2Nr
IHsgTm8sIFllcyB9OwpAQCAtNjMsNiArNjIsOCBAQCBwdWJsaWM6CiAjZW5kaWYKIAogcHJpdmF0
ZToKKyAgICB2b2lkIGF0dGFjaEludGVybmFsKFJlbmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVy
UHRyPFJlbmRlck9iamVjdD4sIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQpOworCiAgICAgdm9p
ZCBjaGlsZEZsb3dTdGF0ZUNoYW5nZXNBbmRBZmZlY3RzUGFyZW50QmxvY2soUmVuZGVyRWxlbWVu
dCYgY2hpbGQpOwogICAgIHZvaWQgY2hpbGRGbG93U3RhdGVDaGFuZ2VzQW5kTm9Mb25nZXJBZmZl
Y3RzUGFyZW50QmxvY2soUmVuZGVyRWxlbWVudCYgY2hpbGQpOwogICAgIHZvaWQgYXR0YWNoSWdu
b3JpbmdDb250aW51YXRpb24oUmVuZGVyRWxlbWVudCYgcGFyZW50LCBSZW5kZXJQdHI8UmVuZGVy
T2JqZWN0PiwgUmVuZGVyT2JqZWN0KiBiZWZvcmVDaGlsZCA9IG51bGxwdHIpOwpAQCAtODYsNiAr
ODcsOCBAQCBwcml2YXRlOgogICAgIHZvaWQgbWFrZUNoaWxkcmVuTm9uSW5saW5lKFJlbmRlckJs
b2NrJiBwYXJlbnQsIFJlbmRlck9iamVjdCogaW5zZXJ0aW9uUG9pbnQgPSBudWxscHRyKTsKICAg
ICB2b2lkIHJlbW92ZUFub255bW91c1dyYXBwZXJzRm9ySW5saW5lQ2hpbGRyZW5JZk5lZWRlZChS
ZW5kZXJFbGVtZW50JiBwYXJlbnQpOwogCisgICAgdm9pZCByZXBvcnRWaXN1YWxseU5vbkVtcHR5
Q29udGVudChjb25zdCBSZW5kZXJFbGVtZW50JiBwYXJlbnQsIGNvbnN0IFJlbmRlck9iamVjdCYg
Y2hpbGQpOworCiAgICAgY2xhc3MgRmlyc3RMZXR0ZXI7CiAgICAgY2xhc3MgTGlzdDsKICAgICBj
bGFzcyBNdWx0aUNvbHVtbjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91
cGRhdGluZy9SZW5kZXJUcmVlVXBkYXRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXIuY3BwCmluZGV4IGJjYjdlNmEzZjQ4MDBmOTY2NmY4
NDA3N2JmNTBlZTAwMWIxODYxMjEuLjY3MzY2ODAzMzNkOTdiMTIxNDdhYzM1MWEyOGFhMjdmOGFl
OWIyMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5k
ZXJUcmVlVXBkYXRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5n
L1JlbmRlclRyZWVVcGRhdGVyLmNwcApAQCAtNDAwLDcgKzQwMCw3IEBAIHZvaWQgUmVuZGVyVHJl
ZVVwZGF0ZXI6OmNyZWF0ZVJlbmRlcmVyKEVsZW1lbnQmIGVsZW1lbnQsIFJlbmRlclN0eWxlJiYg
c3R5bGUpCiAgICAgfQogI2VuZGlmCiAKLSAgICBtX2J1aWxkZXIuYXR0YWNoKGluc2VydGlvblBv
c2l0aW9uLCBXVEZNb3ZlKG5ld1JlbmRlcmVyKSk7CisgICAgbV9idWlsZGVyLmF0dGFjaChpbnNl
cnRpb25Qb3NpdGlvbi5wYXJlbnQoKSwgV1RGTW92ZShuZXdSZW5kZXJlcikpOwogCiAgICAgYXV0
byogdGV4dE1hbmlwdWxhdGlvbkNvbnRyb2xsZXIgPSBtX2RvY3VtZW50LnRleHRNYW5pcHVsYXRp
b25Db250cm9sbGVySWZFeGlzdHMoKTsKICAgICBpZiAoVU5MSUtFTFkodGV4dE1hbmlwdWxhdGlv
bkNvbnRyb2xsZXIpKQpAQCAtNDc4LDE0ICs0NzgsMTQgQEAgdm9pZCBSZW5kZXJUcmVlVXBkYXRl
cjo6Y3JlYXRlVGV4dFJlbmRlcmVyKFRleHQmIHRleHROb2RlLCBjb25zdCBTdHlsZTo6VGV4dFVw
ZGEKICAgICAgICAgYXV0byBuZXdEaXNwbGF5Q29udGVudHNBbm9ueW1vdXNXcmFwcGVyID0gV2Vi
Q29yZTo6Y3JlYXRlUmVuZGVyZXI8UmVuZGVySW5saW5lPih0ZXh0Tm9kZS5kb2N1bWVudCgpLCBS
ZW5kZXJTdHlsZTo6Y2xvbmUoKip0ZXh0VXBkYXRlLT5pbmhlcml0ZWREaXNwbGF5Q29udGVudHNT
dHlsZSkpOwogICAgICAgICBuZXdEaXNwbGF5Q29udGVudHNBbm9ueW1vdXNXcmFwcGVyLT5pbml0
aWFsaXplU3R5bGUoKTsKICAgICAgICAgYXV0byYgZGlzcGxheUNvbnRlbnRzQW5vbnltb3VzV3Jh
cHBlciA9ICpuZXdEaXNwbGF5Q29udGVudHNBbm9ueW1vdXNXcmFwcGVyOwotICAgICAgICBtX2J1
aWxkZXIuYXR0YWNoKHJlbmRlclRyZWVQb3NpdGlvbiwgV1RGTW92ZShuZXdEaXNwbGF5Q29udGVu
dHNBbm9ueW1vdXNXcmFwcGVyKSk7CisgICAgICAgIG1fYnVpbGRlci5hdHRhY2gocmVuZGVyVHJl
ZVBvc2l0aW9uLnBhcmVudCgpLCBXVEZNb3ZlKG5ld0Rpc3BsYXlDb250ZW50c0Fub255bW91c1dy
YXBwZXIpKTsKIAogICAgICAgICB0ZXh0UmVuZGVyZXItPnNldElubGluZVdyYXBwZXJGb3JEaXNw
bGF5Q29udGVudHMoJmRpc3BsYXlDb250ZW50c0Fub255bW91c1dyYXBwZXIpOwogICAgICAgICBt
X2J1aWxkZXIuYXR0YWNoKGRpc3BsYXlDb250ZW50c0Fub255bW91c1dyYXBwZXIsIFdURk1vdmUo
dGV4dFJlbmRlcmVyKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBtX2J1aWxkZXIu
YXR0YWNoKHJlbmRlclRyZWVQb3NpdGlvbiwgV1RGTW92ZSh0ZXh0UmVuZGVyZXIpKTsKKyAgICBt
X2J1aWxkZXIuYXR0YWNoKHJlbmRlclRyZWVQb3NpdGlvbi5wYXJlbnQoKSwgV1RGTW92ZSh0ZXh0
UmVuZGVyZXIpKTsKIH0KIAogdm9pZCBSZW5kZXJUcmVlVXBkYXRlcjo6dXBkYXRlVGV4dFJlbmRl
cmVyKFRleHQmIHRleHQsIGNvbnN0IFN0eWxlOjpUZXh0VXBkYXRlKiB0ZXh0VXBkYXRlKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>392503</attachid>
            <date>2020-03-04 16:23:01 -0800</date>
            <delta_ts>2020-03-04 19:46:26 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208606-20200304162300.patch</filename>
            <type>text/plain</type>
            <size>11324</size>
            <attacher name="alan">zalan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU3ODQ4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDM2OTMyMTQxODIyMTY5
MjI0OTg2YjU0MzkxZDU5NmIyNjczMjFjZC4uZjUyODMxMzQzOTRjYjU1NDNmOTY0YTJmNjYwN2Fl
NTljYmZjYjcwZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDIwLTAzLTA0ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CisKKyAgICAgICAgW1ZORSBsYXlvdXRdIE1vdmUg
dmlzdWFsbHkgbm9uLWVtcHR5IGNvbnRlbnQgcmVwb3J0aW5nIHRvIFJlbmRlclRyZWVCdWlsZGVy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDg2MDYK
KyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzYwMDU2OTUxPgorCisgICAgICAgIFJldmlld2VkIGJ5
IFNpbW9uIEZyYXNlci4KKworICAgICAgICBNb3ZlIHRoZSBWTkUgcmVwb3J0aW5nIGxvZ2ljIGZy
b20gdGhlIGMndG9ycyB0byB0aGUgUmVuZGVyVHJlZUJ1aWxkZXIuCisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
RW1iZWRkZWRPYmplY3Q6OlJlbmRlckVtYmVkZGVkT2JqZWN0KToKKyAgICAgICAgKiByZW5kZXJp
bmcvUmVuZGVySFRNTENhbnZhcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJIVE1MQ2Fu
dmFzOjpSZW5kZXJIVE1MQ2FudmFzKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGV4dC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUZXh0OjpSZW5kZXJUZXh0KToKKyAgICAgICAg
KiByZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyVHJlZUJ1aWxkZXI6OmF0dGFjaCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUcmVlQnVpbGRlcjo6YXR0YWNoSW50ZXJuYWwpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VHJlZUJ1aWxkZXI6OmF0dGFjaElnbm9yaW5nQ29udGludWF0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlclRyZWVCdWlsZGVyOjpyZXBvcnRWaXN1YWxseU5vbkVtcHR5Q29udGVudCk6Cisg
ICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyLmg6CisgICAgICAg
ICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlclRyZWVVcGRhdGVyOjpjcmVhdGVSZW5kZXJlcik6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJUcmVlVXBkYXRlcjo6Y3JlYXRlVGV4dFJlbmRlcmVyKToKKwogMjAyMC0wMy0w
NCAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+CiAKICAgICAgICAgQXZvaWQgZnVs
bCBzdHlsZSByZXNvbHV0aW9uIG9uIEVsZW1lbnQ6OmZvY3VzKCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJFbWJlZGRlZE9iamVjdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyRW1iZWRkZWRPYmplY3QuY3BwCmluZGV4IDJkMDBkZmYwYmEw
MjVhMjVjOWYxZTZjNDI3ZDA1ZGQ3NTgxYzBhYzYuLmM2YTk5NjJjOWQ1MGVmMDlmMmY0YjE2YjA4
NGVlNjkxNGVjZjQxYWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJFbWJlZGRlZE9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckVtYmVkZGVkT2JqZWN0LmNwcApAQCAtMTA0LDggKzEwNCw2IEBAIFJlbmRlckVtYmVkZGVkT2Jq
ZWN0OjpSZW5kZXJFbWJlZGRlZE9iamVjdChIVE1MRnJhbWVPd25lckVsZW1lbnQmIGVsZW1lbnQs
IFJlbmRlCiAgICAgLCBtX3VuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9ySXNQcmVzc2VkKGZhbHNl
KQogICAgICwgbV9tb3VzZURvd25XYXNJblVuYXZhaWxhYmxlUGx1Z2luSW5kaWNhdG9yKGZhbHNl
KQogewotICAgIC8vIEFjdHVhbCBzaXplIGlzIG5vdCBrbm93biB5ZXQsIHJlcG9ydCB0aGUgZGVm
YXVsdCBpbnRyaW5zaWMgc2l6ZS4KLSAgICB2aWV3KCkuZnJhbWVWaWV3KCkuaW5jcmVtZW50Vmlz
dWFsbHlOb25FbXB0eVBpeGVsQ291bnQocm91bmRlZEludFNpemUoaW50cmluc2ljU2l6ZSgpKSk7
CiB9CiAKIFJlbmRlckVtYmVkZGVkT2JqZWN0Ojp+UmVuZGVyRW1iZWRkZWRPYmplY3QoKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckhUTUxDYW52YXMuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckhUTUxDYW52YXMuY3BwCmluZGV4IDVhMzA4
NmVhNWQ0NzY5YTVhMzQyZGE1MGIxNzNiMzQzNzIyNDQ5ZjkuLmQxOTJjNzMxM2E0MTUyNWQyY2Ey
NTVmNmUyM2VmYmE5NDQ4NWRkZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJIVE1MQ2FudmFzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVySFRNTENhbnZhcy5jcHAKQEAgLTQ4LDggKzQ4LDYgQEAgV1RGX01BS0VfSVNPX0FMTE9DQVRF
RF9JTVBMKFJlbmRlckhUTUxDYW52YXMpOwogUmVuZGVySFRNTENhbnZhczo6UmVuZGVySFRNTENh
bnZhcyhIVE1MQ2FudmFzRWxlbWVudCYgZWxlbWVudCwgUmVuZGVyU3R5bGUmJiBzdHlsZSkKICAg
ICA6IFJlbmRlclJlcGxhY2VkKGVsZW1lbnQsIFdURk1vdmUoc3R5bGUpLCBlbGVtZW50LnNpemUo
KSkKIHsKLSAgICAvLyBBY3R1YWwgc2l6ZSBpcyBub3Qga25vd24geWV0LCByZXBvcnQgdGhlIGRl
ZmF1bHQgaW50cmluc2ljIHNpemUuCi0gICAgdmlldygpLmZyYW1lVmlldygpLmluY3JlbWVudFZp
c3VhbGx5Tm9uRW1wdHlQaXhlbENvdW50KHJvdW5kZWRJbnRTaXplKGludHJpbnNpY1NpemUoKSkp
OwogfQogCiBIVE1MQ2FudmFzRWxlbWVudCYgUmVuZGVySFRNTENhbnZhczo6Y2FudmFzRWxlbWVu
dCgpIGNvbnN0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dC5jcHAKaW5kZXggNDI2
ZWNhNDE2MzI3ZTM5ZjMxYjlmNDQwOWE2MzQ2ZDBhZmFhNWUxNC4uYjYxYmY2YzEwOWQxNDFmNTE4
YmM5OTUwMDk1OWY1YzYzZjJiNjMxMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
ZXh0LmNwcApAQCAtMTk1LDE2ICsxOTUsNiBAQCBpbmxpbmUgUmVuZGVyVGV4dDo6UmVuZGVyVGV4
dChOb2RlJiBub2RlLCBjb25zdCBTdHJpbmcmIHRleHQpCiAgICAgQVNTRVJUKCFtX3RleHQuaXNO
dWxsKCkpOwogICAgIHNldElzVGV4dCgpOwogICAgIG1fY2FuVXNlU2ltcGxlRm9udENvZGVQYXRo
ID0gY29tcHV0ZUNhblVzZVNpbXBsZUZvbnRDb2RlUGF0aCgpOwotCi0gICAgLy8gRklYTUU6IEZp
bmQgb3V0IGhvdyB0byBpbmNyZW1lbnQgdGhlIHZpc3VhbGx5IG5vbiBlbXB0eSBjaGFyYWN0ZXIg
Y291bnQgd2hlbiB0aGUgZm9udCBiZWNvbWVzIGF2YWlsYWJsZS4KLSAgICBhdXRvIGlzVGV4dFZp
c2libGUgPSBmYWxzZTsKLSAgICBpZiAoYXV0byogcGFyZW50RWxlbWVudCA9IG5vZGUucGFyZW50
RWxlbWVudCgpKSB7Ci0gICAgICAgIGF1dG8qIHN0eWxlID0gcGFyZW50RWxlbWVudC0+cmVuZGVy
ZXIoKSA/ICZwYXJlbnRFbGVtZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpIDogbnVsbHB0cjsKLSAg
ICAgICAgaXNUZXh0VmlzaWJsZSA9IHN0eWxlICYmIHN0eWxlLT52aXNpYmlsaXR5KCkgPT0gVmlz
aWJpbGl0eTo6VmlzaWJsZSAmJiAhc3R5bGUtPmZvbnRDYXNjYWRlKCkuaXNMb2FkaW5nQ3VzdG9t
Rm9udHMoKTsKLSAgICB9Ci0KLSAgICBpZiAoaXNUZXh0VmlzaWJsZSkKLSAgICAgICAgdmlldygp
LmZyYW1lVmlldygpLmluY3JlbWVudFZpc3VhbGx5Tm9uRW1wdHlDaGFyYWN0ZXJDb3VudCh0ZXh0
KTsKIH0KIAogUmVuZGVyVGV4dDo6UmVuZGVyVGV4dChUZXh0JiB0ZXh0Tm9kZSwgY29uc3QgU3Ry
aW5nJiB0ZXh0KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5n
L1JlbmRlclRyZWVCdWlsZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGlu
Zy9SZW5kZXJUcmVlQnVpbGRlci5jcHAKaW5kZXggOGE1ZmZiNDYzNmI0YjJmMjA0Njg2OWQyZGY4
NTAyYTcyZGZiYjQxZi4uNWVjM2MwYzEyOTVjYzMxYTliN2VmYWUwZGI0MmEyMmNkNTI4NjNlYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVC
dWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVy
VHJlZUJ1aWxkZXIuY3BwCkBAIC0zMiwxMyArMzIsMTYgQEAKICNpbmNsdWRlICJSZW5kZXJCdXR0
b24uaCIKICNpbmNsdWRlICJSZW5kZXJDb3VudGVyLmgiCiAjaW5jbHVkZSAiUmVuZGVyRWxlbWVu
dC5oIgorI2luY2x1ZGUgIlJlbmRlckVtYmVkZGVkT2JqZWN0LmgiCiAjaW5jbHVkZSAiUmVuZGVy
RnVsbFNjcmVlbi5oIgogI2luY2x1ZGUgIlJlbmRlckdyaWQuaCIKKyNpbmNsdWRlICJSZW5kZXJI
VE1MQ2FudmFzLmgiCiAjaW5jbHVkZSAiUmVuZGVyTGluZUJyZWFrLmgiCiAjaW5jbHVkZSAiUmVu
ZGVyTWF0aE1MRmVuY2VkLmgiCiAjaW5jbHVkZSAiUmVuZGVyTWVudUxpc3QuaCIKICNpbmNsdWRl
ICJSZW5kZXJNdWx0aUNvbHVtbkZsb3cuaCIKICNpbmNsdWRlICJSZW5kZXJNdWx0aUNvbHVtblNw
YW5uZXJQbGFjZWhvbGRlci5oIgorI2luY2x1ZGUgIlJlbmRlclJlcGxhY2VkLmgiCiAjaW5jbHVk
ZSAiUmVuZGVyUnVieS5oIgogI2luY2x1ZGUgIlJlbmRlclJ1YnlCYXNlLmgiCiAjaW5jbHVkZSAi
UmVuZGVyUnVieVJ1bi5oIgpAQCAtMTkwLDYgKzE5MywxMiBAQCB2b2lkIFJlbmRlclRyZWVCdWls
ZGVyOjpkZXN0cm95KFJlbmRlck9iamVjdCYgcmVuZGVyZXIpCiB9CiAKIHZvaWQgUmVuZGVyVHJl
ZUJ1aWxkZXI6OmF0dGFjaChSZW5kZXJFbGVtZW50JiBwYXJlbnQsIFJlbmRlclB0cjxSZW5kZXJP
YmplY3Q+IGNoaWxkLCBSZW5kZXJPYmplY3QqIGJlZm9yZUNoaWxkKQoreworICAgIHJlcG9ydFZp
c3VhbGx5Tm9uRW1wdHlDb250ZW50KHBhcmVudCwgKmNoaWxkKTsKKyAgICBhdHRhY2hJbnRlcm5h
bChwYXJlbnQsIFdURk1vdmUoY2hpbGQpLCBiZWZvcmVDaGlsZCk7Cit9CisKK3ZvaWQgUmVuZGVy
VHJlZUJ1aWxkZXI6OmF0dGFjaEludGVybmFsKFJlbmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVy
UHRyPFJlbmRlck9iamVjdD4gY2hpbGQsIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQpCiB7CiAg
ICAgYXV0byBpbnNlcnRSZWN1cnNpdmVJZk5lZWRlZCA9IFsmXShSZW5kZXJFbGVtZW50JiBwYXJl
bnRDYW5kaWRhdGUpIHsKICAgICAgICAgaWYgKCZwYXJlbnQgPT0gJnBhcmVudENhbmRpZGF0ZSkg
ewpAQCAtMjAxLDcgKzIxMCw3IEBAIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmF0dGFjaChSZW5k
ZXJFbGVtZW50JiBwYXJlbnQsIFJlbmRlclB0cjxSZW5kZXJPYmplY3Q+IGNoCiAgICAgICAgICAg
ICBhdHRhY2hUb1JlbmRlckVsZW1lbnQocGFyZW50LCBXVEZNb3ZlKGNoaWxkKSwgYmVmb3JlQ2hp
bGQpOwogICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICB9Ci0gICAgICAgIGF0dGFjaChwYXJl
bnRDYW5kaWRhdGUsIFdURk1vdmUoY2hpbGQpLCBiZWZvcmVDaGlsZCk7CisgICAgICAgIGF0dGFj
aEludGVybmFsKHBhcmVudENhbmRpZGF0ZSwgV1RGTW92ZShjaGlsZCksIGJlZm9yZUNoaWxkKTsK
ICAgICB9OwogCiAgICAgQVNTRVJUKCZwYXJlbnQudmlldygpID09ICZtX3ZpZXcpOwpAQCAtMzQy
LDcgKzM1MSw3IEBAIHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmF0dGFjaElnbm9yaW5nQ29udGlu
dWF0aW9uKFJlbmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVyCiAgICAgICAgIHJldHVybjsKICAg
ICB9CiAKLSAgICBhdHRhY2gocGFyZW50LCBXVEZNb3ZlKGNoaWxkKSwgYmVmb3JlQ2hpbGQpOwor
ICAgIGF0dGFjaEludGVybmFsKHBhcmVudCwgV1RGTW92ZShjaGlsZCksIGJlZm9yZUNoaWxkKTsK
IH0KIAogUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyVHJlZUJ1aWxkZXI6OmRldGFjaChS
ZW5kZXJFbGVtZW50JiBwYXJlbnQsIFJlbmRlck9iamVjdCYgY2hpbGQsIENhbkNvbGxhcHNlQW5v
bnltb3VzQmxvY2sgY2FuQ29sbGFwc2VBbm9ueW1vdXNCbG9jaykKQEAgLTM4NiwxMSArMzk1LDYg
QEAgUmVuZGVyUHRyPFJlbmRlck9iamVjdD4gUmVuZGVyVHJlZUJ1aWxkZXI6OmRldGFjaChSZW5k
ZXJFbGVtZW50JiBwYXJlbnQsIFJlbmRlck8KICAgICByZXR1cm4gZGV0YWNoRnJvbVJlbmRlckVs
ZW1lbnQocGFyZW50LCBjaGlsZCk7CiB9CiAKLXZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmF0dGFj
aChSZW5kZXJUcmVlUG9zaXRpb24mIHBvc2l0aW9uLCBSZW5kZXJQdHI8UmVuZGVyT2JqZWN0PiBj
aGlsZCkKLXsKLSAgICBhdHRhY2gocG9zaXRpb24ucGFyZW50KCksIFdURk1vdmUoY2hpbGQpLCBw
b3NpdGlvbi5uZXh0U2libGluZygpKTsKLX0KLQogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkK
IHZvaWQgUmVuZGVyVHJlZUJ1aWxkZXI6OmNyZWF0ZVBsYWNlaG9sZGVyRm9yRnVsbFNjcmVlbihS
ZW5kZXJGdWxsU2NyZWVuJiByZW5kZXJlciwgc3RkOjp1bmlxdWVfcHRyPFJlbmRlclN0eWxlPiBz
dHlsZSwgY29uc3QgTGF5b3V0UmVjdCYgZnJhbWVSZWN0KQogewpAQCAtOTEzLDQgKzkxNywyMyBA
QCB2b2lkIFJlbmRlclRyZWVCdWlsZGVyOjphdHRhY2hUb1JlbmRlckdyaWQoUmVuZGVyR3JpZCYg
cGFyZW50LCBSZW5kZXJQdHI8UmVuZGVyTwogICAgIHBhcmVudC5kaXJ0eUdyaWQoKTsKIH0KIAor
dm9pZCBSZW5kZXJUcmVlQnVpbGRlcjo6cmVwb3J0VmlzdWFsbHlOb25FbXB0eUNvbnRlbnQoY29u
c3QgUmVuZGVyRWxlbWVudCYgcGFyZW50LCBjb25zdCBSZW5kZXJPYmplY3QmIGNoaWxkKQorewor
ICAgIGlmIChpczxSZW5kZXJUZXh0PihjaGlsZCkpIHsKKyAgICAgICAgYXV0byYgc3R5bGUgPSBw
YXJlbnQuc3R5bGUoKTsKKyAgICAgICAgLy8gRklYTUU6IEZpbmQgb3V0IGhvdyB0byBpbmNyZW1l
bnQgdGhlIHZpc3VhbGx5IG5vbiBlbXB0eSBjaGFyYWN0ZXIgY291bnQgd2hlbiB0aGUgZm9udCBi
ZWNvbWVzIGF2YWlsYWJsZS4KKyAgICAgICAgaWYgKHN0eWxlLnZpc2liaWxpdHkoKSA9PSBWaXNp
YmlsaXR5OjpWaXNpYmxlICYmICFzdHlsZS5mb250Q2FzY2FkZSgpLmlzTG9hZGluZ0N1c3RvbUZv
bnRzKCkpIHsKKyAgICAgICAgICAgIGF1dG8mIHRleHRSZW5kZXJlciA9IGRvd25jYXN0PFJlbmRl
clRleHQ+KGNoaWxkKTsKKyAgICAgICAgICAgIG1fdmlldy5mcmFtZVZpZXcoKS5pbmNyZW1lbnRW
aXN1YWxseU5vbkVtcHR5Q2hhcmFjdGVyQ291bnQodGV4dFJlbmRlcmVyLnRleHQoKSk7CisgICAg
ICAgIH0KKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICBpZiAoaXM8UmVuZGVySFRNTENhbnZh
cz4oY2hpbGQpIHx8IGlzPFJlbmRlckVtYmVkZGVkT2JqZWN0PihjaGlsZCkpIHsKKyAgICAgICAg
Ly8gQWN0dWFsIHNpemUgaXMgbm90IGtub3duIHlldCwgcmVwb3J0IHRoZSBkZWZhdWx0IGludHJp
bnNpYyBzaXplIGZvciByZXBsYWNlZCBlbGVtZW50cy4KKyAgICAgICAgYXV0byYgcmVwbGFjZWRS
ZW5kZXJlciA9IGRvd25jYXN0PFJlbmRlclJlcGxhY2VkPihjaGlsZCk7CisgICAgICAgIG1fdmll
dy5mcmFtZVZpZXcoKS5pbmNyZW1lbnRWaXN1YWxseU5vbkVtcHR5UGl4ZWxDb3VudChyb3VuZGVk
SW50U2l6ZShyZXBsYWNlZFJlbmRlcmVyLmludHJpbnNpY1NpemUoKSkpOworICAgICAgICByZXR1
cm47CisgICAgfQorfQorCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
dXBkYXRpbmcvUmVuZGVyVHJlZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91
cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlci5oCmluZGV4IGFkODAwN2QwYzljNmUxM2M4YjVmMTgw
ZGY0NTE1MjAwMTYxNmE0MmMuLjJiZjU5Mjk3YzQ3OTQ5NzNiZWY3M2ZjZGQ0NWEwODFhNDc3N2Jh
N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5kZXJU
cmVlQnVpbGRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9SZW5k
ZXJUcmVlQnVpbGRlci5oCkBAIC00Miw3ICs0Miw2IEBAIHB1YmxpYzoKICAgICAvLyBGSVhNRTog
UmVtb3ZlLgogICAgIHN0YXRpYyBSZW5kZXJUcmVlQnVpbGRlciogY3VycmVudCgpIHsgcmV0dXJu
IHNfY3VycmVudDsgfQogCi0gICAgdm9pZCBhdHRhY2goUmVuZGVyVHJlZVBvc2l0aW9uJiwgUmVu
ZGVyUHRyPFJlbmRlck9iamVjdD4pOwogICAgIHZvaWQgYXR0YWNoKFJlbmRlckVsZW1lbnQmIHBh
cmVudCwgUmVuZGVyUHRyPFJlbmRlck9iamVjdD4sIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQg
PSBudWxscHRyKTsKIAogICAgIGVudW0gY2xhc3MgQ2FuQ29sbGFwc2VBbm9ueW1vdXNCbG9jayB7
IE5vLCBZZXMgfTsKQEAgLTYzLDYgKzYyLDggQEAgcHVibGljOgogI2VuZGlmCiAKIHByaXZhdGU6
CisgICAgdm9pZCBhdHRhY2hJbnRlcm5hbChSZW5kZXJFbGVtZW50JiBwYXJlbnQsIFJlbmRlclB0
cjxSZW5kZXJPYmplY3Q+LCBSZW5kZXJPYmplY3QqIGJlZm9yZUNoaWxkKTsKKwogICAgIHZvaWQg
Y2hpbGRGbG93U3RhdGVDaGFuZ2VzQW5kQWZmZWN0c1BhcmVudEJsb2NrKFJlbmRlckVsZW1lbnQm
IGNoaWxkKTsKICAgICB2b2lkIGNoaWxkRmxvd1N0YXRlQ2hhbmdlc0FuZE5vTG9uZ2VyQWZmZWN0
c1BhcmVudEJsb2NrKFJlbmRlckVsZW1lbnQmIGNoaWxkKTsKICAgICB2b2lkIGF0dGFjaElnbm9y
aW5nQ29udGludWF0aW9uKFJlbmRlckVsZW1lbnQmIHBhcmVudCwgUmVuZGVyUHRyPFJlbmRlck9i
amVjdD4sIFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQgPSBudWxscHRyKTsKQEAgLTg2LDYgKzg3
LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIG1ha2VDaGlsZHJlbk5vbklubGluZShSZW5kZXJCbG9j
ayYgcGFyZW50LCBSZW5kZXJPYmplY3QqIGluc2VydGlvblBvaW50ID0gbnVsbHB0cik7CiAgICAg
dm9pZCByZW1vdmVBbm9ueW1vdXNXcmFwcGVyc0ZvcklubGluZUNoaWxkcmVuSWZOZWVkZWQoUmVu
ZGVyRWxlbWVudCYgcGFyZW50KTsKIAorICAgIHZvaWQgcmVwb3J0VmlzdWFsbHlOb25FbXB0eUNv
bnRlbnQoY29uc3QgUmVuZGVyRWxlbWVudCYgcGFyZW50LCBjb25zdCBSZW5kZXJPYmplY3QmIGNo
aWxkKTsKKwogICAgIGNsYXNzIEZpcnN0TGV0dGVyOwogICAgIGNsYXNzIExpc3Q7CiAgICAgY2xh
c3MgTXVsdGlDb2x1bW47CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBk
YXRpbmcvUmVuZGVyVHJlZVVwZGF0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3Vw
ZGF0aW5nL1JlbmRlclRyZWVVcGRhdGVyLmNwcAppbmRleCBiY2I3ZTZhM2Y0ODAwZjk2NjZmODQw
NzdiZjUwZWUwMDFiMTg2MTIxLi4xOTU0OTFhYjEzNWVlMDEzMDc5MmRiNzY4NjI3MjZkMjY4NzE2
YWRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVy
VHJlZVVwZGF0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy91cGRhdGluZy9S
ZW5kZXJUcmVlVXBkYXRlci5jcHAKQEAgLTQwMCw3ICs0MDAsNyBAQCB2b2lkIFJlbmRlclRyZWVV
cGRhdGVyOjpjcmVhdGVSZW5kZXJlcihFbGVtZW50JiBlbGVtZW50LCBSZW5kZXJTdHlsZSYmIHN0
eWxlKQogICAgIH0KICNlbmRpZgogCi0gICAgbV9idWlsZGVyLmF0dGFjaChpbnNlcnRpb25Qb3Np
dGlvbiwgV1RGTW92ZShuZXdSZW5kZXJlcikpOworICAgIG1fYnVpbGRlci5hdHRhY2goaW5zZXJ0
aW9uUG9zaXRpb24ucGFyZW50KCksIFdURk1vdmUobmV3UmVuZGVyZXIpLCBpbnNlcnRpb25Qb3Np
dGlvbi5uZXh0U2libGluZygpKTsKIAogICAgIGF1dG8qIHRleHRNYW5pcHVsYXRpb25Db250cm9s
bGVyID0gbV9kb2N1bWVudC50ZXh0TWFuaXB1bGF0aW9uQ29udHJvbGxlcklmRXhpc3RzKCk7CiAg
ICAgaWYgKFVOTElLRUxZKHRleHRNYW5pcHVsYXRpb25Db250cm9sbGVyKSkKQEAgLTQ3OCwxNCAr
NDc4LDE0IEBAIHZvaWQgUmVuZGVyVHJlZVVwZGF0ZXI6OmNyZWF0ZVRleHRSZW5kZXJlcihUZXh0
JiB0ZXh0Tm9kZSwgY29uc3QgU3R5bGU6OlRleHRVcGRhCiAgICAgICAgIGF1dG8gbmV3RGlzcGxh
eUNvbnRlbnRzQW5vbnltb3VzV3JhcHBlciA9IFdlYkNvcmU6OmNyZWF0ZVJlbmRlcmVyPFJlbmRl
cklubGluZT4odGV4dE5vZGUuZG9jdW1lbnQoKSwgUmVuZGVyU3R5bGU6OmNsb25lKCoqdGV4dFVw
ZGF0ZS0+aW5oZXJpdGVkRGlzcGxheUNvbnRlbnRzU3R5bGUpKTsKICAgICAgICAgbmV3RGlzcGxh
eUNvbnRlbnRzQW5vbnltb3VzV3JhcHBlci0+aW5pdGlhbGl6ZVN0eWxlKCk7CiAgICAgICAgIGF1
dG8mIGRpc3BsYXlDb250ZW50c0Fub255bW91c1dyYXBwZXIgPSAqbmV3RGlzcGxheUNvbnRlbnRz
QW5vbnltb3VzV3JhcHBlcjsKLSAgICAgICAgbV9idWlsZGVyLmF0dGFjaChyZW5kZXJUcmVlUG9z
aXRpb24sIFdURk1vdmUobmV3RGlzcGxheUNvbnRlbnRzQW5vbnltb3VzV3JhcHBlcikpOworICAg
ICAgICBtX2J1aWxkZXIuYXR0YWNoKHJlbmRlclRyZWVQb3NpdGlvbi5wYXJlbnQoKSwgV1RGTW92
ZShuZXdEaXNwbGF5Q29udGVudHNBbm9ueW1vdXNXcmFwcGVyKSwgcmVuZGVyVHJlZVBvc2l0aW9u
Lm5leHRTaWJsaW5nKCkpOwogCiAgICAgICAgIHRleHRSZW5kZXJlci0+c2V0SW5saW5lV3JhcHBl
ckZvckRpc3BsYXlDb250ZW50cygmZGlzcGxheUNvbnRlbnRzQW5vbnltb3VzV3JhcHBlcik7CiAg
ICAgICAgIG1fYnVpbGRlci5hdHRhY2goZGlzcGxheUNvbnRlbnRzQW5vbnltb3VzV3JhcHBlciwg
V1RGTW92ZSh0ZXh0UmVuZGVyZXIpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIG1f
YnVpbGRlci5hdHRhY2gocmVuZGVyVHJlZVBvc2l0aW9uLCBXVEZNb3ZlKHRleHRSZW5kZXJlcikp
OworICAgIG1fYnVpbGRlci5hdHRhY2gocmVuZGVyVHJlZVBvc2l0aW9uLnBhcmVudCgpLCBXVEZN
b3ZlKHRleHRSZW5kZXJlciksIHJlbmRlclRyZWVQb3NpdGlvbi5uZXh0U2libGluZygpKTsKIH0K
IAogdm9pZCBSZW5kZXJUcmVlVXBkYXRlcjo6dXBkYXRlVGV4dFJlbmRlcmVyKFRleHQmIHRleHQs
IGNvbnN0IFN0eWxlOjpUZXh0VXBkYXRlKiB0ZXh0VXBkYXRlKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>