<?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>200619</bug_id>
          
          <creation_ts>2019-08-10 19:26:32 -0700</creation_ts>
          <short_desc>WebPage and ViewportConfiguration have differing notions of viewLayoutSize</short_desc>
          <delta_ts>2019-08-11 16:17:24 -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>WebKit2</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>DoNotImportToRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>yongjun_zhang</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1560292</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-10 19:26:32 -0700</bug_when>
    <thetext>m_viewLayoutSize exists in both WebPage and ViewportConfiguration. However, they mean different things (ViewportConfiguration’s m_viewLayoutSize is about the size of the platform view, and WebPage’s m_viewLayoutSize is about special the autosizing/autolayout mode on macOS that’s guarded by SPI).

This makes some existing viewport configuration logic difficult to refactor and fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560311</commentid>
    <comment_count>1</comment_count>
      <attachid>376031</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-10 21:48:01 -0700</bug_when>
    <thetext>Created attachment 376031
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560314</commentid>
    <comment_count>2</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2019-08-10 21:49:25 -0700</bug_when>
    <thetext>(This is motivated by the fix for &lt;rdar://problem/52694257&gt;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560354</commentid>
    <comment_count>3</comment_count>
      <attachid>376031</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-11 12:12:04 -0700</bug_when>
    <thetext>Comment on attachment 376031
Patch

Clearing flags on attachment: 376031

Committed r248522: &lt;https://trac.webkit.org/changeset/248522&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1560355</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-08-11 12:12:05 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>376031</attachid>
            <date>2019-08-10 21:48:01 -0700</date>
            <delta_ts>2019-08-11 12:12:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-200619-20190810214800.patch</filename>
            <type>text/plain</type>
            <size>22276</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ4NTE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IGJmZWEyNWUzYmY3ODE4MTcx
YjEzMTJmNTFiZGEzODRhYWRmZDQyMzUuLjJhNTU3MzQyZTYwMTY3N2M5YmM0MTZhNDBjNDE1MmFl
YmFhZjA2M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjIgQEAKKzIwMTktMDgtMTAgIFdlbnNvbiBI
c2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgV2ViUGFnZSBhbmQgVmll
d3BvcnRDb25maWd1cmF0aW9uIGhhdmUgZGlmZmVyaW5nIG5vdGlvbnMgb2Ygdmlld0xheW91dFNp
emUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwMDYx
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBu
b3Rpb24gb2YgYSAidmlldyBsYXlvdXQgc2l6ZSIgZXhpc3RzIG9uIFdlYlBhZ2UgYW5kIFdlYlBh
Z2VQcm94eSBmb3IgdGhlIHB1cnBvc2Ugb2Ygc3BlY2lmeWluZyBhbiBpbnRyaW5zaWMKKyAgICAg
ICAgY29udGVudCBzaXplIGZvciB0aGUgZW50aXJlIHdlYiB2aWV3IG9uIG1hY09TLiBIb3dldmVy
LCBpdCBhbHNvIGV4aXN0cyBpbiBWaWV3cG9ydENvbmZpZ3VyYXRpb24gKGFzCisgICAgICAgIHZp
ZXdMYXlvdXRTaXplKSBhbmQgV2ViUGFnZVByb3h5ICh1bmRlciB0aGUgbmFtZSBtX3ZpZXdwb3J0
Q29uZmlndXJhdGlvblZpZXdMYXlvdXRTaXplKSBmb3IgdGhlIHB1cnBvc2VzIG9mCisgICAgICAg
IHNwZWNpZnlpbmcgdGhlIG1pbmltdW0gbGF5b3V0IHNpemUgb2YgdGhlIHBhZ2UncyB2aWV3cG9y
dC4KKworICAgICAgICBUaGlzIGlzIGVzcGVjaWFsbHkgY29uZnVzaW5nIGluIFdlYlBhZ2VQcm94
eSwgd2hpY2ggaGFzIGJvdGggbV92aWV3cG9ydENvbmZpZ3VyYXRpb25WaWV3TGF5b3V0U2l6ZSBh
bmQKKyAgICAgICAgbV92aWV3TGF5b3V0U2l6ZS4gVG8gcmVtZWR5IHRoaXMsIHJlbmFtZSAiKnZp
ZXdMYXlvdXRTaXplIiBmb3IgdGhlIHB1cnBvc2VzIG9mIHNwZWNpZnlpbmcgYW4gaW50cmluc2lj
IHdlYiB2aWV3CisgICAgICAgIHNpemUgdG8gIiptaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQiIGlu
c3RlYWQsIHdoaWNoIGlzIGNvbnNpc3RlbnQgd2l0aCB0aGUgY29ycmVzcG9uZGluZyBTUEkgcHJv
cGVydHkgbmFtZSBvbgorICAgICAgICBXS1ZpZXcuCisKKyAgICAgICAgTm8gY2hhbmdlIGluIGJl
aGF2aW9yLgorCisgICAgICAgICogU2hhcmVkL1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjplbmNvZGUgY29u
c3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNvZGUp
OgorICAgICAgICAqIFNoYXJlZC9XZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzLmg6CisgICAgICAg
ICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgtW1dLV2ViVmll
dyBfbWluaW11bUxheW91dFdpZHRoXSk6CisgICAgICAgICgtW1dLV2ViVmlldyBfc2V0TWluaW11
bUxheW91dFdpZHRoOl0pOgorICAgICAgICAqIFVJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3SW1wbC5t
bToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnNldE1pbmltdW1TaXplRm9yQXV0b0xh
eW91dCk6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjptaW5pbXVtU2l6ZUZvckF1dG9M
YXlvdXQgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6c2V0SW50cmluc2lj
Q29udGVudFNpemUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9EcmF3aW5nQXJlYVByb3h5Lmg6Cisg
ICAgICAgIChXZWJLaXQ6OkRyYXdpbmdBcmVhUHJveHk6Om1pbmltdW1TaXplRm9yQXV0b0xheW91
dERpZENoYW5nZSk6CisgICAgICAgIChXZWJLaXQ6OkRyYXdpbmdBcmVhUHJveHk6OnZpZXdMYXlv
dXRTaXplRGlkQ2hhbmdlKTogRGVsZXRlZC4KKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjptYXliZUluaXRpYWxpemVT
YW5kYm94RXh0ZW5zaW9uSGFuZGxlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5
Lmg6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6bWluaW11bVNpemVGb3JBdXRvTGF5
b3V0IGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5Ojp2aWV3TGF5b3V0U2l6
ZSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL21hYy9UaWxlZENvcmVBbmlt
YXRpb25EcmF3aW5nQXJlYVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9UaWxlZENv
cmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5Lm1tOgorICAgICAgICAoV2ViS2l0OjpUaWxlZENv
cmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5OjptaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXREaWRD
aGFuZ2UpOgorICAgICAgICAoV2ViS2l0OjpUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYVBy
b3h5OjpkaWRVcGRhdGVHZW9tZXRyeSk6CisgICAgICAgIChXZWJLaXQ6OlRpbGVkQ29yZUFuaW1h
dGlvbkRyYXdpbmdBcmVhUHJveHk6OndpbGxTZW5kVXBkYXRlR2VvbWV0cnkpOgorICAgICAgICAo
V2ViS2l0OjpUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5Ojp2aWV3TGF5b3V0U2l6
ZURpZENoYW5nZSk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9h
ZGVyQ2xpZW50Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Om1fdGV4dEF1
dG9TaXppbmdBZGp1c3RtZW50VGltZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpyZWlu
aXRpYWxpemVXZWJQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6c2V0TWluaW11bVNp
emVGb3JBdXRvTGF5b3V0KToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlSW50cmlu
c2ljQ29udGVudFNpemVJZk5lZWRlZCk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNldFZp
ZXdMYXlvdXRTaXplKTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjptaW5pbXVtU2l6ZUZvckF1dG9MYXlv
dXQgY29uc3QpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp2aWV3TGF5b3V0U2l6ZSBjb25z
dCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2Fn
ZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRp
b25EcmF3aW5nQXJlYS5tbToKKyAgICAgICAgKFdlYktpdDo6VGlsZWRDb3JlQW5pbWF0aW9uRHJh
d2luZ0FyZWE6OnVwZGF0ZUdlb21ldHJ5KToKKwogMjAxOS0wOC0xMCAgQWxleCBDaHJpc3RlbnNl
biAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIERpc2FibGUgQ29udGVudENo
YW5nZU9ic2VydmVyIFRvdWNoRXZlbnQgYWRqdXN0bWVudCBvbiB5b3V0dWJlLmNvbSBvbiBpT1Mg
aW4gbW9iaWxlIGJyb3dzaW5nIG1vZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVk
L1dlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMuY3BwIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
UGFnZUNyZWF0aW9uUGFyYW1ldGVycy5jcHAKaW5kZXggMmM0OGIxY2JmNzRmODNmNTdjZmU1M2Q1
MzIzNTg4YzE0YWU0NmFjZS4uZDZhYjRlNzU3MTJhMzcyNjU0ZjkwNjliNTY1NGY2ZDI1MDVhMDI5
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1l
dGVycy5jcHAKQEAgLTY3LDcgKzY3LDcgQEAgdm9pZCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJz
OjplbmNvZGUoSVBDOjpFbmNvZGVyJiBlbmNvZGVyKSBjb25zdAogICAgIGVuY29kZXIgPDwgbXV0
ZWQ7CiAgICAgZW5jb2RlciA8PCBtYXlTdGFydE1lZGlhV2hlbkluV2luZG93OwogICAgIGVuY29k
ZXIgPDwgbWVkaWFQbGF5YmFja0lzU3VzcGVuZGVkOwotICAgIGVuY29kZXIgPDwgdmlld0xheW91
dFNpemU7CisgICAgZW5jb2RlciA8PCBtaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQ7CiAgICAgZW5j
b2RlciA8PCBhdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0OwogICAgIGVuY29kZXIg
PDwgdmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0czsKICAgICBlbmNvZGVyLmVuY29kZUVu
dW0oc2Nyb2xsUGlubmluZ0JlaGF2aW9yKTsKQEAgLTIyNiw3ICsyMjYsNyBAQCBPcHRpb25hbDxX
ZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzPiBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzOjpkZWNv
ZGUoSVBDOjpEZWNvZAogICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogICAgIGlmICghZGVj
b2Rlci5kZWNvZGUocGFyYW1ldGVycy5tZWRpYVBsYXliYWNrSXNTdXNwZW5kZWQpKQogICAgICAg
ICByZXR1cm4gV1RGOjpudWxsb3B0OwotICAgIGlmICghZGVjb2Rlci5kZWNvZGUocGFyYW1ldGVy
cy52aWV3TGF5b3V0U2l6ZSkpCisgICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLm1p
bmltdW1TaXplRm9yQXV0b0xheW91dCkpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAg
ICAgaWYgKCFkZWNvZGVyLmRlY29kZShwYXJhbWV0ZXJzLmF1dG9TaXppbmdTaG91bGRFeHBhbmRU
b1ZpZXdIZWlnaHQpKQogICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oIGIvU291cmNl
L1dlYktpdC9TaGFyZWQvV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycy5oCmluZGV4IGYzNmNjNjJk
YmRkNmIyYWQzMGYwMmIwNjlhN2Q4Mzc5MDkxZWU3MTMuLjMyZTA0MDMxZTc1OTM5MDY3MTFhOWRl
MDAxZGNkZjI5NzIzMmY3MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYlBh
Z2VDcmVhdGlvblBhcmFtZXRlcnMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJQYWdl
Q3JlYXRpb25QYXJhbWV0ZXJzLmgKQEAgLTExOCw3ICsxMTgsNyBAQCBzdHJ1Y3QgV2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVycyB7CiAgICAgYm9vbCBtYXlTdGFydE1lZGlhV2hlbkluV2luZG93Owog
ICAgIGJvb2wgbWVkaWFQbGF5YmFja0lzU3VzcGVuZGVkIHsgZmFsc2UgfTsKIAotICAgIFdlYkNv
cmU6OkludFNpemUgdmlld0xheW91dFNpemU7CisgICAgV2ViQ29yZTo6SW50U2l6ZSBtaW5pbXVt
U2l6ZUZvckF1dG9MYXlvdXQ7CiAgICAgYm9vbCBhdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3
SGVpZ2h0OwogICAgIE9wdGlvbmFsPFdlYkNvcmU6OkludFNpemU+IHZpZXdwb3J0U2l6ZUZvckNT
U1ZpZXdwb3J0VW5pdHM7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0Nv
Y29hL1dLV2ViVmlldy5tbQppbmRleCBiMGZlMGVlMmMzZTJlYzBjZGFjZWMzZDM0OGFkYzRmMjgz
ZDI3ODdmLi4wMzkxYTE5OTJlMzUzMmRiZTVmMjFkYjY5MWRkODEwOGFhZTJhNjZjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0KQEAgLTY1Njks
MTQgKzY1NjksMTQgQEAgLSAoQk9PTClfYXV0b21hdGljYWxseUFkanVzdHNDb250ZW50SW5zZXRz
CiAKIC0gKENHRmxvYXQpX21pbmltdW1MYXlvdXRXaWR0aAogewotICAgIHJldHVybiBfcGFnZS0+
dmlld0xheW91dFNpemUoKS53aWR0aCgpOworICAgIHJldHVybiBfcGFnZS0+bWluaW11bVNpemVG
b3JBdXRvTGF5b3V0KCkud2lkdGgoKTsKIH0KIAogLSAodm9pZClfc2V0TWluaW11bUxheW91dFdp
ZHRoOihDR0Zsb2F0KXdpZHRoCiB7CiAgICAgQk9PTCBleHBhbmRzVG9GaXQgPSB3aWR0aCA+IDA7
CiAKLSAgICBfcGFnZS0+c2V0Vmlld0xheW91dFNpemUoV2ViQ29yZTo6SW50U2l6ZSh3aWR0aCwg
MCkpOworICAgIF9wYWdlLT5zZXRNaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoV2ViQ29yZTo6SW50
U2l6ZSh3aWR0aCwgMCkpOwogICAgIF9wYWdlLT5zZXRNYWluRnJhbWVJc1Njcm9sbGFibGUoIWV4
cGFuZHNUb0ZpdCk7CiAKICAgICBfaW1wbC0+c2V0Q2xpcHNUb1Zpc2libGVSZWN0KGV4cGFuZHNU
b0ZpdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJWaWV3
SW1wbC5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCmlu
ZGV4IDUyMDc1N2E1OTI1ZDU1Yzk1ZTlmNzU5MzU0YWU2NjljOTY0YmUyODUuLmYxNzZmMWE2NWE5
OTJjNTFhYzM0NGVkMDA4ODU3ZTAxM2VmOTk0YjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0NvY29hL1dlYlZpZXdJbXBsLm1tCkBAIC0xODY1LDcgKzE4NjUsNyBAQCB2b2lkIFdlYlZp
ZXdJbXBsOjpzZXRNaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoQ0dTaXplIG1pbmltdW1TaXplRm9y
QXV0b0xheW91dCkKIHsKICAgICBib29sIGV4cGFuZHNUb0ZpdCA9IG1pbmltdW1TaXplRm9yQXV0
b0xheW91dC53aWR0aCA+IDA7CiAKLSAgICBtX3BhZ2UtPnNldFZpZXdMYXlvdXRTaXplKFdlYkNv
cmU6OkludFNpemUobWluaW11bVNpemVGb3JBdXRvTGF5b3V0KSk7CisgICAgbV9wYWdlLT5zZXRN
aW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoV2ViQ29yZTo6SW50U2l6ZShtaW5pbXVtU2l6ZUZvckF1
dG9MYXlvdXQpKTsKICAgICBtX3BhZ2UtPnNldE1haW5GcmFtZUlzU2Nyb2xsYWJsZSghZXhwYW5k
c1RvRml0KTsKIAogICAgIHNldENsaXBzVG9WaXNpYmxlUmVjdChleHBhbmRzVG9GaXQpOwpAQCAt
MTg3Myw3ICsxODczLDcgQEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0TWluaW11bVNpemVGb3JBdXRv
TGF5b3V0KENHU2l6ZSBtaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQpCiAKIENHU2l6ZSBXZWJWaWV3
SW1wbDo6bWluaW11bVNpemVGb3JBdXRvTGF5b3V0KCkgY29uc3QKIHsKLSAgICByZXR1cm4gbV9w
YWdlLT52aWV3TGF5b3V0U2l6ZSgpOworICAgIHJldHVybiBtX3BhZ2UtPm1pbmltdW1TaXplRm9y
QXV0b0xheW91dCgpOwogfQogCiB2b2lkIFdlYlZpZXdJbXBsOjpzZXRTaG91bGRFeHBhbmRUb1Zp
ZXdIZWlnaHRGb3JBdXRvTGF5b3V0KGJvb2wgc2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0Rm9yQXV0
b0xheW91dCkKQEAgLTE4OTMsNyArMTg5Myw3IEBAIHZvaWQgV2ViVmlld0ltcGw6OnNldEludHJp
bnNpY0NvbnRlbnRTaXplKENHU2l6ZSBpbnRyaW5zaWNDb250ZW50U2l6ZSkKICAgICAvLyBzbyB0
aGF0IGF1dG9sYXlvdXQgd2lsbCBrbm93IHRvIHByb3ZpZGUgc3BhY2UgZm9yIHVzLgogCiAgICAg
Q0dTaXplIGludHJpbnNpY0NvbnRlbnRTaXplQWNrbm93bGVkZ2luZ0ZsZXhpYmxlV2lkdGggPSBp
bnRyaW5zaWNDb250ZW50U2l6ZTsKLSAgICBpZiAoaW50cmluc2ljQ29udGVudFNpemUud2lkdGgg
PCBtX3BhZ2UtPnZpZXdMYXlvdXRTaXplKCkud2lkdGgoKSkKKyAgICBpZiAoaW50cmluc2ljQ29u
dGVudFNpemUud2lkdGggPCBtX3BhZ2UtPm1pbmltdW1TaXplRm9yQXV0b0xheW91dCgpLndpZHRo
KCkpCiAgICAgICAgIGludHJpbnNpY0NvbnRlbnRTaXplQWNrbm93bGVkZ2luZ0ZsZXhpYmxlV2lk
dGgud2lkdGggPSBOU1ZpZXdOb0ludHJpbnNpY01ldHJpYzsKIAogICAgIG1faW50cmluc2ljQ29u
dGVudFNpemUgPSBpbnRyaW5zaWNDb250ZW50U2l6ZUFja25vd2xlZGdpbmdGbGV4aWJsZVdpZHRo
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eS5o
IGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvRHJhd2luZ0FyZWFQcm94eS5oCmluZGV4IDQ2ZTE2
OTc3Mjg0ZjViYTNmODdkMGY5YWU0MGExNTNmMzU5YWI5ZDkuLjNkZWY1ZDc5ZjA3Y2I5MTQwYjgy
NTYyZGI5ZjZmMmJjNmQwZjcyZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0RyYXdpbmdBcmVhUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9EcmF3aW5n
QXJlYVByb3h5LmgKQEAgLTc0LDcgKzc0LDcgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdGV4
cHIgU2Vjb25kcyBkaWRVcGRhdGVCYWNraW5nU3RvcmVTdGF0ZVRpbWVvdXQoKSB7IHJldHVybiBT
ZWNvbmRzOjpmcm9tTWlsbGlzZWNvbmRzKDUwMCk7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBjb2xv
clNwYWNlRGlkQ2hhbmdlKCkgeyB9Ci0gICAgdmlydHVhbCB2b2lkIHZpZXdMYXlvdXRTaXplRGlk
Q2hhbmdlKCkgeyB9CisgICAgdmlydHVhbCB2b2lkIG1pbmltdW1TaXplRm9yQXV0b0xheW91dERp
ZENoYW5nZSgpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIGFkanVzdFRyYW5zaWVudFpvb20oZG91
YmxlLCBXZWJDb3JlOjpGbG9hdFBvaW50KSB7IH0KICAgICB2aXJ0dWFsIHZvaWQgY29tbWl0VHJh
bnNpZW50Wm9vbShkb3VibGUsIFdlYkNvcmU6OkZsb2F0UG9pbnQpIHsgfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAKaW5kZXggOGJjYmI4YTBiNDExMzU3NmYwNmVmNzAx
YzY0MGQxZWU1MjcwZmUzOS4uN2ZhMmI0ZDZkM2MxNjYxYTcwMDNiNzc4NTU4ZGE3YzJmZjI0ZjA3
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCkBAIC03MjA2LDcg
KzcyMDYsNyBAQCBXZWJQYWdlQ3JlYXRpb25QYXJhbWV0ZXJzIFdlYlBhZ2VQcm94eTo6Y3JlYXRp
b25QYXJhbWV0ZXJzKFdlYlByb2Nlc3NQcm94eSYgcHJvYwogICAgIHBhcmFtZXRlcnMubXV0ZWQg
PSBtX211dGVkU3RhdGU7CiAgICAgcGFyYW1ldGVycy5tYXlTdGFydE1lZGlhV2hlbkluV2luZG93
ID0gbV9tYXlTdGFydE1lZGlhV2hlbkluV2luZG93OwogICAgIHBhcmFtZXRlcnMubWVkaWFQbGF5
YmFja0lzU3VzcGVuZGVkID0gbV9tZWRpYVBsYXliYWNrSXNTdXNwZW5kZWQ7Ci0gICAgcGFyYW1l
dGVycy52aWV3TGF5b3V0U2l6ZSA9IG1fdmlld0xheW91dFNpemU7CisgICAgcGFyYW1ldGVycy5t
aW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQgPSBtX21pbmltdW1TaXplRm9yQXV0b0xheW91dDsKICAg
ICBwYXJhbWV0ZXJzLmF1dG9TaXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQgPSBtX2F1dG9T
aXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQ7CiAgICAgcGFyYW1ldGVycy52aWV3cG9ydFNp
emVGb3JDU1NWaWV3cG9ydFVuaXRzID0gbV92aWV3cG9ydFNpemVGb3JDU1NWaWV3cG9ydFVuaXRz
OwogICAgIHBhcmFtZXRlcnMuc2Nyb2xsUGlubmluZ0JlaGF2aW9yID0gbV9zY3JvbGxQaW5uaW5n
QmVoYXZpb3I7CkBAIC03Nzc4LDIxICs3Nzc4LDIxIEBAIHZvaWQgV2ViUGFnZVByb3h5OjpzYXZl
UERGVG9GaWxlSW5Eb3dubG9hZHNGb2xkZXIoU3RyaW5nJiYgc3VnZ2VzdGVkRmlsZW5hbWUsIFVS
CiAgICAgICAgIEFQSTo6RGF0YTo6Y3JlYXRlKGRhdGFSZWZlcmVuY2UuZGF0YSgpLCBkYXRhUmVm
ZXJlbmNlLnNpemUoKSkuZ2V0KCkpOwogfQogCi12b2lkIFdlYlBhZ2VQcm94eTo6c2V0Vmlld0xh
eW91dFNpemUoY29uc3QgSW50U2l6ZSYgdmlld0xheW91dFNpemUpCit2b2lkIFdlYlBhZ2VQcm94
eTo6c2V0TWluaW11bVNpemVGb3JBdXRvTGF5b3V0KGNvbnN0IEludFNpemUmIHNpemUpCiB7Ci0g
ICAgaWYgKG1fdmlld0xheW91dFNpemUgPT0gdmlld0xheW91dFNpemUpCisgICAgaWYgKG1fbWlu
aW11bVNpemVGb3JBdXRvTGF5b3V0ID09IHNpemUpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1f
dmlld0xheW91dFNpemUgPSB2aWV3TGF5b3V0U2l6ZTsKKyAgICBtX21pbmltdW1TaXplRm9yQXV0
b0xheW91dCA9IHNpemU7CiAKICAgICBpZiAoIWhhc1J1bm5pbmdQcm9jZXNzKCkpCiAgICAgICAg
IHJldHVybjsKIAotICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6U2V0Vmll
d0xheW91dFNpemUodmlld0xheW91dFNpemUpLCBtX3BhZ2VJRCk7Ci0gICAgbV9kcmF3aW5nQXJl
YS0+dmlld0xheW91dFNpemVEaWRDaGFuZ2UoKTsKKyAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2U6OlNldE1pbmltdW1TaXplRm9yQXV0b0xheW91dChzaXplKSwgbV9wYWdlSUQp
OworICAgIG1fZHJhd2luZ0FyZWEtPm1pbmltdW1TaXplRm9yQXV0b0xheW91dERpZENoYW5nZSgp
OwogCiAjaWYgVVNFKEFQUEtJVCkKLSAgICBpZiAobV92aWV3TGF5b3V0U2l6ZS53aWR0aCgpIDw9
IDApCisgICAgaWYgKG1fbWluaW11bVNpemVGb3JBdXRvTGF5b3V0LndpZHRoKCkgPD0gMCkKICAg
ICAgICAgZGlkQ2hhbmdlSW50cmluc2ljQ29udGVudFNpemUoSW50U2l6ZSgtMSwgLTEpKTsKICNl
bmRpZgogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2ViUGFnZVByb3h5
LmggYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuaAppbmRleCA2MTg3MDQz
ODI4MWY4OTMyODY3OGM2NmYzZDAxNmRiZjA5OGUzNTdhLi5iNDM4M2NhZjg4ZjM3MjcyY2Y5NDc3
YjY0MDM5Y2U5ZWY1Yzk0OWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
aApAQCAtMTI0Myw4ICsxMjQzLDggQEAgcHVibGljOgogICAgIHZvaWQgZW5kQ29sb3JQaWNrZXIo
KTsKICNlbmRpZgogCi0gICAgV2ViQ29yZTo6SW50U2l6ZSB2aWV3TGF5b3V0U2l6ZSgpIGNvbnN0
IHsgcmV0dXJuIG1fdmlld0xheW91dFNpemU7IH0KLSAgICB2b2lkIHNldFZpZXdMYXlvdXRTaXpl
KGNvbnN0IFdlYkNvcmU6OkludFNpemUmKTsKKyAgICBXZWJDb3JlOjpJbnRTaXplIG1pbmltdW1T
aXplRm9yQXV0b0xheW91dCgpIGNvbnN0IHsgcmV0dXJuIG1fbWluaW11bVNpemVGb3JBdXRvTGF5
b3V0OyB9CisgICAgdm9pZCBzZXRNaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoY29uc3QgV2ViQ29y
ZTo6SW50U2l6ZSYpOwogCiAgICAgYm9vbCBhdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVp
Z2h0KCkgY29uc3QgeyByZXR1cm4gbV9hdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0
OyB9CiAgICAgdm9pZCBzZXRBdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9WaWV3SGVpZ2h0KGJvb2wp
OwpAQCAtMjQyMiw3ICsyNDIyLDcgQEAgcHJpdmF0ZToKIAogICAgIGJvb2wgbV9zdXBwcmVzc1Zp
c2liaWxpdHlVcGRhdGVzIHsgZmFsc2UgfTsKICAgICBib29sIG1fYXV0b1NpemluZ1Nob3VsZEV4
cGFuZFRvVmlld0hlaWdodCB7IGZhbHNlIH07Ci0gICAgV2ViQ29yZTo6SW50U2l6ZSBtX3ZpZXdM
YXlvdXRTaXplOworICAgIFdlYkNvcmU6OkludFNpemUgbV9taW5pbXVtU2l6ZUZvckF1dG9MYXlv
dXQ7CiAgICAgT3B0aW9uYWw8V2ViQ29yZTo6SW50U2l6ZT4gbV92aWV3cG9ydFNpemVGb3JDU1NW
aWV3cG9ydFVuaXRzOwogCiAgICAgLy8gVmlzdWFsIHZpZXdwb3J0cwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhUHJv
eHkuaCBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3
aW5nQXJlYVByb3h5LmgKaW5kZXggNDQyMDBjMmRhNDQ5ZjdiMmJlMmFmNjRlMTVjMWRlMDMwNTUy
NjlhZi4uMWI5NGYyZmQ2NjA3MWYxNzVlNTg2NjFmM2Q5MTk5MzU0ZjhlN2Y1MiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdB
cmVhUHJveHkuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvVGlsZWRDb3JlQW5p
bWF0aW9uRHJhd2luZ0FyZWFQcm94eS5oCkBAIC00MSw3ICs0MSw3IEBAIHByaXZhdGU6CiAgICAg
dm9pZCBkZXZpY2VTY2FsZUZhY3RvckRpZENoYW5nZSgpIG92ZXJyaWRlOwogICAgIHZvaWQgc2l6
ZURpZENoYW5nZSgpIG92ZXJyaWRlOwogICAgIHZvaWQgY29sb3JTcGFjZURpZENoYW5nZSgpIG92
ZXJyaWRlOwotICAgIHZvaWQgdmlld0xheW91dFNpemVEaWRDaGFuZ2UoKSBvdmVycmlkZTsKKyAg
ICB2b2lkIG1pbmltdW1TaXplRm9yQXV0b0xheW91dERpZENoYW5nZSgpIG92ZXJyaWRlOwogCiAg
ICAgdm9pZCBlbnRlckFjY2VsZXJhdGVkQ29tcG9zaXRpbmdNb2RlKHVpbnQ2NF90IGJhY2tpbmdT
dG9yZVN0YXRlSUQsIGNvbnN0IExheWVyVHJlZUNvbnRleHQmKSBvdmVycmlkZTsKICAgICB2b2lk
IGV4aXRBY2NlbGVyYXRlZENvbXBvc2l0aW5nTW9kZSh1aW50NjRfdCBiYWNraW5nU3RvcmVTdGF0
ZUlELCBjb25zdCBVcGRhdGVJbmZvJikgb3ZlcnJpZGU7CkBAIC03MCw3ICs3MCw3IEBAIHByaXZh
dGU6CiAgICAgV2ViQ29yZTo6SW50U2l6ZSBtX2xhc3RTZW50U2l6ZTsKIAogICAgIC8vIFRoZSBs
YXN0IG1pbmltdW0gbGF5b3V0IHNpemUgd2Ugc2VudCB0byB0aGUgd2ViIHByb2Nlc3MuCi0gICAg
V2ViQ29yZTo6SW50U2l6ZSBtX2xhc3RTZW50Vmlld0xheW91dFNpemU7CisgICAgV2ViQ29yZTo6
SW50U2l6ZSBtX2xhc3RTZW50TWluaW11bVNpemVGb3JBdXRvTGF5b3V0OwogCiAgICAgQ2FsbGJh
Y2tNYXAgbV9jYWxsYmFja3M7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhUHJveHkubW0gYi9Tb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWFQcm94eS5tbQpp
bmRleCBmNzBmMWE0YWM0ZDllMTZhZjZjYTk3OGM4MjZiNzUyOWZkM2UyMDU2Li4yMTM1YmYxMTg4
ZWE3N2Q0ZTBmODkwYTVlMWFkMWQzMDc1NWQ5MGE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWFQcm94eS5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0Fy
ZWFQcm94eS5tbQpAQCAtNzYsNyArNzYsNyBAQCB2b2lkIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdp
bmdBcmVhUHJveHk6OmNvbG9yU3BhY2VEaWRDaGFuZ2UoKQogICAgIHNlbmQoTWVzc2FnZXM6OkRy
YXdpbmdBcmVhOjpTZXRDb2xvclNwYWNlKG1fd2ViUGFnZVByb3h5LmNvbG9yU3BhY2UoKSkpOwog
fQogCi12b2lkIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhUHJveHk6OnZpZXdMYXlvdXRT
aXplRGlkQ2hhbmdlKCkKK3ZvaWQgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWFQcm94eTo6
bWluaW11bVNpemVGb3JBdXRvTGF5b3V0RGlkQ2hhbmdlKCkKIHsKICAgICBpZiAoIW1fd2ViUGFn
ZVByb3h5Lmhhc1J1bm5pbmdQcm9jZXNzKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTExMSwxMSAr
MTExLDExIEBAIHZvaWQgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWFQcm94eTo6ZGlkVXBk
YXRlR2VvbWV0cnkoKQogCiAgICAgbV9pc1dhaXRpbmdGb3JEaWRVcGRhdGVHZW9tZXRyeSA9IGZh
bHNlOwogCi0gICAgSW50U2l6ZSB2aWV3TGF5b3V0U2l6ZSA9IG1fd2ViUGFnZVByb3h5LnZpZXdM
YXlvdXRTaXplKCk7CisgICAgSW50U2l6ZSBtaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQgPSBtX3dl
YlBhZ2VQcm94eS5taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoKTsKIAogICAgIC8vIElmIHRoZSBX
S1ZpZXcgd2FzIHJlc2l6ZWQgd2hpbGUgd2Ugd2VyZSB3YWl0aW5nIGZvciBhIERpZFVwZGF0ZUdl
b21ldHJ5IHJlcGx5IGZyb20gdGhlIHdlYiBwcm9jZXNzLAogICAgIC8vIHdlIG5lZWQgdG8gcmVz
ZW5kIHRoZSBuZXcgc2l6ZSBoZXJlLgotICAgIGlmIChtX2xhc3RTZW50U2l6ZSAhPSBtX3NpemUg
fHwgbV9sYXN0U2VudFZpZXdMYXlvdXRTaXplICE9IHZpZXdMYXlvdXRTaXplKQorICAgIGlmICht
X2xhc3RTZW50U2l6ZSAhPSBtX3NpemUgfHwgbV9sYXN0U2VudE1pbmltdW1TaXplRm9yQXV0b0xh
eW91dCAhPSBtaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQpCiAgICAgICAgIHNlbmRVcGRhdGVHZW9t
ZXRyeSgpOwogfQogCkBAIC0xMjcsNyArMTI3LDcgQEAgdm9pZCBUaWxlZENvcmVBbmltYXRpb25E
cmF3aW5nQXJlYVByb3h5Ojp3YWl0Rm9yRGlkVXBkYXRlQWN0aXZpdHlTdGF0ZShBY3Rpdml0eVMK
IAogdm9pZCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYVByb3h5Ojp3aWxsU2VuZFVwZGF0
ZUdlb21ldHJ5KCkKIHsKLSAgICBtX2xhc3RTZW50Vmlld0xheW91dFNpemUgPSBtX3dlYlBhZ2VQ
cm94eS52aWV3TGF5b3V0U2l6ZSgpOworICAgIG1fbGFzdFNlbnRNaW5pbXVtU2l6ZUZvckF1dG9M
YXlvdXQgPSBtX3dlYlBhZ2VQcm94eS5taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoKTsKICAgICBt
X2xhc3RTZW50U2l6ZSA9IG1fc2l6ZTsKICAgICBtX2lzV2FpdGluZ0ZvckRpZFVwZGF0ZUdlb21l
dHJ5ID0gdHJ1ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuY3BwCmluZGV4IDhhNDQ0
NGVmM2Q1NTk5MzI1YzQxMWI5NmVkN2U0M2FlMGRkZWY0NzUuLjY1NzM5YmI4YWE5NmRmZThjMmIw
ZTI2YzE3MWE5ZjliNzZiNzM0MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcApA
QCAtMTQ4NSw5ICsxNDg1LDkgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6dHJhbnNpdGlv
blRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpCiAgICAgICAgIHdlYlBhZ2UtPmZpeGVkTGF5b3V0U2l6
ZSgpLCBmaXhlZFZpc2libGVDb250ZW50UmVjdCwgc2hvdWxkVXNlRml4ZWRMYXlvdXQsCiAgICAg
ICAgIGhvcml6b250YWxTY3JvbGxiYXJNb2RlLCBob3Jpem9udGFsTG9jaywgdmVydGljYWxTY3Jv
bGxiYXJNb2RlLCB2ZXJ0aWNhbExvY2spOwogCi0gICAgaWYgKGludCB2aWV3TGF5b3V0V2lkdGgg
PSB3ZWJQYWdlLT52aWV3TGF5b3V0U2l6ZSgpLndpZHRoKCkpIHsKLSAgICAgICAgaW50IHZpZXdM
YXlvdXRIZWlnaHQgPSBzdGQ6Om1heCh3ZWJQYWdlLT52aWV3TGF5b3V0U2l6ZSgpLmhlaWdodCgp
LCAxKTsKLSAgICAgICAgbV9mcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKS0+ZW5hYmxlQXV0b1Np
emVNb2RlKHRydWUsIHsgdmlld0xheW91dFdpZHRoLCB2aWV3TGF5b3V0SGVpZ2h0IH0pOworICAg
IGlmIChpbnQgd2lkdGggPSB3ZWJQYWdlLT5taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoKS53aWR0
aCgpKSB7CisgICAgICAgIGludCBoZWlnaHQgPSBzdGQ6Om1heCh3ZWJQYWdlLT5taW5pbXVtU2l6
ZUZvckF1dG9MYXlvdXQoKS5oZWlnaHQoKSwgMSk7CisgICAgICAgIG1fZnJhbWUtPmNvcmVGcmFt
ZSgpLT52aWV3KCktPmVuYWJsZUF1dG9TaXplTW9kZSh0cnVlLCB7IHdpZHRoLCBoZWlnaHQgfSk7
CiAKICAgICAgICAgaWYgKHdlYlBhZ2UtPmF1dG9TaXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWln
aHQoKSkKICAgICAgICAgICAgIG1fZnJhbWUtPmNvcmVGcmFtZSgpLT52aWV3KCktPnNldEF1dG9T
aXplRml4ZWRNaW5pbXVtSGVpZ2h0KHdlYlBhZ2UtPnNpemUoKS5oZWlnaHQoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDM4MDA5MGJiNTIw
NzhhZTBkZmZlNzA5NmUxNmRmYWJiNTlhNmEwY2MuLjEzMzY1NzBkOTNhYTUxMTA2OTc4NTYxMTcw
MjYwODkzYjhhM2NkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuY3BwCkBAIC01ODMsNyArNTgzLDcgQEAgV2ViUGFnZTo6V2ViUGFnZShQYWdlSWRlbnRp
ZmllciBwYWdlSUQsIFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmJiBwYXJhbWV0ZXJzKQogCiAg
ICAgdXBkYXRlSXNJbldpbmRvdyh0cnVlKTsKIAotICAgIHNldFZpZXdMYXlvdXRTaXplKHBhcmFt
ZXRlcnMudmlld0xheW91dFNpemUpOworICAgIHNldE1pbmltdW1TaXplRm9yQXV0b0xheW91dChw
YXJhbWV0ZXJzLm1pbmltdW1TaXplRm9yQXV0b0xheW91dCk7CiAgICAgc2V0QXV0b1NpemluZ1No
b3VsZEV4cGFuZFRvVmlld0hlaWdodChwYXJhbWV0ZXJzLmF1dG9TaXppbmdTaG91bGRFeHBhbmRU
b1ZpZXdIZWlnaHQpOwogICAgIHNldFZpZXdwb3J0U2l6ZUZvckNTU1ZpZXdwb3J0VW5pdHMocGFy
YW1ldGVycy52aWV3cG9ydFNpemVGb3JDU1NWaWV3cG9ydFVuaXRzKTsKICAgICAKQEAgLTc2OSw3
ICs3NjksNyBAQCB2b2lkIFdlYlBhZ2U6OnJlaW5pdGlhbGl6ZVdlYlBhZ2UoV2ViUGFnZUNyZWF0
aW9uUGFyYW1ldGVycyYmIHBhcmFtZXRlcnMpCiAgICAgICAgIHVuZnJlZXplTGF5ZXJUcmVlKExh
eWVyVHJlZUZyZWV6ZVJlYXNvbjo6UGFnZVN1c3BlbmRlZCk7CiAgICAgfQogCi0gICAgc2V0Vmll
d0xheW91dFNpemUocGFyYW1ldGVycy52aWV3TGF5b3V0U2l6ZSk7CisgICAgc2V0TWluaW11bVNp
emVGb3JBdXRvTGF5b3V0KHBhcmFtZXRlcnMubWluaW11bVNpemVGb3JBdXRvTGF5b3V0KTsKIAog
ICAgIGlmIChtX2FjdGl2aXR5U3RhdGUgIT0gcGFyYW1ldGVycy5hY3Rpdml0eVN0YXRlKQogICAg
ICAgICBzZXRBY3Rpdml0eVN0YXRlKHBhcmFtZXRlcnMuYWN0aXZpdHlTdGF0ZSwgQWN0aXZpdHlT
dGF0ZUNoYW5nZUFzeW5jaHJvbm91cywgVmVjdG9yPENhbGxiYWNrSUQ+KCkpOwpAQCAtNTU5Mywy
MCArNTU5MywxOCBAQCB2b2lkIFdlYlBhZ2U6OnNldEFsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxl
cihib29sIGFsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlcikKICAgICB2aWV3LT5zZXRWZXJ0aWNh
bFNjcm9sbGJhck1vZGUoYWx3YXlzU2hvd3NWZXJ0aWNhbFNjcm9sbGVyID8gU2Nyb2xsYmFyQWx3
YXlzT24gOiBtX21haW5GcmFtZUlzU2Nyb2xsYWJsZSA/IFNjcm9sbGJhckF1dG8gOiBTY3JvbGxi
YXJBbHdheXNPZmYsIGFsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlciB8fCAhbV9tYWluRnJhbWVJ
c1Njcm9sbGFibGUpOwogfQogCi12b2lkIFdlYlBhZ2U6OnNldFZpZXdMYXlvdXRTaXplKGNvbnN0
IEludFNpemUmIHZpZXdMYXlvdXRTaXplKQordm9pZCBXZWJQYWdlOjpzZXRNaW5pbXVtU2l6ZUZv
ckF1dG9MYXlvdXQoY29uc3QgSW50U2l6ZSYgc2l6ZSkKIHsKLSAgICBpZiAobV92aWV3TGF5b3V0
U2l6ZSA9PSB2aWV3TGF5b3V0U2l6ZSkKKyAgICBpZiAobV9taW5pbXVtU2l6ZUZvckF1dG9MYXlv
dXQgPT0gc2l6ZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV92aWV3TGF5b3V0U2l6ZSA9IHZp
ZXdMYXlvdXRTaXplOwotICAgIGlmICh2aWV3TGF5b3V0U2l6ZS53aWR0aCgpIDw9IDApIHsKKyAg
ICBtX21pbmltdW1TaXplRm9yQXV0b0xheW91dCA9IHNpemU7CisgICAgaWYgKHNpemUud2lkdGgo
KSA8PSAwKSB7CiAgICAgICAgIGNvcmVQYWdlKCktPm1haW5GcmFtZSgpLnZpZXcoKS0+ZW5hYmxl
QXV0b1NpemVNb2RlKGZhbHNlLCB7IH0pOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAg
aW50IHZpZXdMYXlvdXRXaWR0aCA9IHZpZXdMYXlvdXRTaXplLndpZHRoKCk7Ci0gICAgaW50IHZp
ZXdMYXlvdXRIZWlnaHQgPSBzdGQ6Om1heCh2aWV3TGF5b3V0U2l6ZS5oZWlnaHQoKSwgMSk7Ci0g
ICAgY29yZVBhZ2UoKS0+bWFpbkZyYW1lKCkudmlldygpLT5lbmFibGVBdXRvU2l6ZU1vZGUodHJ1
ZSwgeyB2aWV3TGF5b3V0V2lkdGgsIHZpZXdMYXlvdXRIZWlnaHQgfSk7CisgICAgY29yZVBhZ2Uo
KS0+bWFpbkZyYW1lKCkudmlldygpLT5lbmFibGVBdXRvU2l6ZU1vZGUodHJ1ZSwgeyBzaXplLndp
ZHRoKCksIHN0ZDo6bWF4KHNpemUuaGVpZ2h0KCksIDEpIH0pOwogfQogCiB2b2lkIFdlYlBhZ2U6
OnNldEF1dG9TaXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQoYm9vbCBzaG91bGRFeHBhbmQp
CkBAIC02MzQ2LDcgKzYzNDQsNyBAQCB2b2lkIFdlYlBhZ2U6OnJlbW92ZUFsbFVzZXJDb250ZW50
KCkKIAogdm9pZCBXZWJQYWdlOjp1cGRhdGVJbnRyaW5zaWNDb250ZW50U2l6ZUlmTmVlZGVkKGNv
bnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUpCiB7Ci0gICAgaWYgKCF2aWV3TGF5b3V0U2l6ZSgp
LndpZHRoKCkpCisgICAgaWYgKCFtaW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoKS53aWR0aCgpKQog
ICAgICAgICByZXR1cm47CiAgICAgQVNTRVJUKG1haW5GcmFtZVZpZXcoKSk7CiAgICAgQVNTRVJU
KG1haW5GcmFtZVZpZXcoKS0+aXNBdXRvU2l6ZUVuYWJsZWQoKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggMmQxMjg5YzgwZGY4MjJhYTJmOWQwODUy
NWZhZjlmNTRlOWQ3YTYyNy4uNzA5OTI3MDE0MjQzYzExMjhmZjZmYWM5ZTRlYTkyZGQ2NTEyMmM2
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaApAQCAtMTAw
OSw4ICsxMDA5LDggQEAgcHVibGljOgogICAgIGJvb2wgYWx3YXlzU2hvd3NIb3Jpem9udGFsU2Ny
b2xsZXIoKSBjb25zdCB7IHJldHVybiBtX2Fsd2F5c1Nob3dzSG9yaXpvbnRhbFNjcm9sbGVyOyB9
OwogICAgIGJvb2wgYWx3YXlzU2hvd3NWZXJ0aWNhbFNjcm9sbGVyKCkgY29uc3QgeyByZXR1cm4g
bV9hbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXI7IH07CiAKLSAgICB2b2lkIHNldFZpZXdMYXlv
dXRTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmKTsKLSAgICBXZWJDb3JlOjpJbnRTaXplIHZp
ZXdMYXlvdXRTaXplKCkgY29uc3QgeyByZXR1cm4gbV92aWV3TGF5b3V0U2l6ZTsgfQorICAgIHZv
aWQgc2V0TWluaW11bVNpemVGb3JBdXRvTGF5b3V0KGNvbnN0IFdlYkNvcmU6OkludFNpemUmKTsK
KyAgICBXZWJDb3JlOjpJbnRTaXplIG1pbmltdW1TaXplRm9yQXV0b0xheW91dCgpIGNvbnN0IHsg
cmV0dXJuIG1fbWluaW11bVNpemVGb3JBdXRvTGF5b3V0OyB9CiAKICAgICB2b2lkIHNldEF1dG9T
aXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQoYm9vbCBzaG91bGRFeHBhbmQpOwogICAgIGJv
b2wgYXV0b1NpemluZ1Nob3VsZEV4cGFuZFRvVmlld0hlaWdodCgpIHsgcmV0dXJuIG1fYXV0b1Np
emluZ1Nob3VsZEV4cGFuZFRvVmlld0hlaWdodDsgfQpAQCAtMTgwOCw3ICsxODA4LDcgQEAgcHJp
dmF0ZToKIAogICAgIEhhc2hTZXQ8dW5zaWduZWQgbG9uZz4gbV90cmFja2VkTmV0d29ya1Jlc291
cmNlUmVxdWVzdElkZW50aWZpZXJzOwogCi0gICAgV2ViQ29yZTo6SW50U2l6ZSBtX3ZpZXdMYXlv
dXRTaXplOworICAgIFdlYkNvcmU6OkludFNpemUgbV9taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQ7
CiAgICAgYm9vbCBtX2F1dG9TaXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQgeyBmYWxzZSB9
OwogICAgIE9wdGlvbmFsPFdlYkNvcmU6OkludFNpemU+IG1fdmlld3BvcnRTaXplRm9yQ1NTVmll
d3BvcnRVbml0czsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5tZXNzYWdlcy5pbiBiL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYlBhZ2UubWVzc2FnZXMuaW4KaW5kZXggMTkzYmNlMTEzNzc3ZTBjNGM0ZmEwNzVmYjNkYTlm
NGUxNWMwMjBhZS4uYTUyZTI1MWQyNWRhNmQ4ODcxYjI3MmQ3MTQyMjkxMzI5YzVmMjQzOCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdl
cy5pbgorKysgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLm1lc3Nh
Z2VzLmluCkBAIC00NTUsNyArNDU1LDcgQEAgR2VuZXJhdGVTeW50aGV0aWNFZGl0aW5nQ29tbWFu
ZChlbnVtOnVpbnQ4X3QgV2ViS2l0OjpTeW50aGV0aWNFZGl0aW5nQ29tbWFuZFR5cGUKICAgICBT
ZXRBbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlcihib29sIGFsd2F5c1Nob3dzSG9yaXpvbnRh
bFNjcm9sbGVyKQogICAgIFNldEFsd2F5c1Nob3dzVmVydGljYWxTY3JvbGxlcihib29sIGFsd2F5
c1Nob3dzVmVydGljYWxTY3JvbGxlcikKIAotICAgIFNldFZpZXdMYXlvdXRTaXplKFdlYkNvcmU6
OkludFNpemUgdmlld0xheW91dFNpemUpCisgICAgU2V0TWluaW11bVNpemVGb3JBdXRvTGF5b3V0
KFdlYkNvcmU6OkludFNpemUgc2l6ZSkKICAgICBTZXRBdXRvU2l6aW5nU2hvdWxkRXhwYW5kVG9W
aWV3SGVpZ2h0KGJvb2wgc2hvdWxkRXhwYW5kKQogCiAgICAgU2V0Vmlld3BvcnRTaXplRm9yQ1NT
Vmlld3BvcnRVbml0cyhPcHRpb25hbDxXZWJDb3JlOjpJbnRTaXplPiB2aWV3cG9ydFNpemUpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3Jl
QW5pbWF0aW9uRHJhd2luZ0FyZWEubW0gYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFn
ZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEubW0KaW5kZXggZWNmZDkyMjUwNjg3
ODljYThjNDM2NTkyMDk2ZmZmMDY2YWUzMDEyOS4uZGY2MDAzNjQ1OThmMTM0NjI5ZGFiNjI3MDZl
YWY2ODYxZTVmZjMzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBh
Z2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5t
bQpAQCAtNTk3LDcgKzU5Nyw3IEBAIHZvaWQgVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6
OnVwZGF0ZUdlb21ldHJ5KGNvbnN0IEludFNpemUmIHZpZXdTaXplLCBib29sCiAgICAgSW50U2l6
ZSBzaXplID0gdmlld1NpemU7CiAgICAgSW50U2l6ZSBjb250ZW50U2l6ZSA9IEludFNpemUoLTEs
IC0xKTsKIAotICAgIGlmICghbV93ZWJQYWdlLnZpZXdMYXlvdXRTaXplKCkud2lkdGgoKSB8fCBt
X3dlYlBhZ2UuYXV0b1NpemluZ1Nob3VsZEV4cGFuZFRvVmlld0hlaWdodCgpKQorICAgIGlmICgh
bV93ZWJQYWdlLm1pbmltdW1TaXplRm9yQXV0b0xheW91dCgpLndpZHRoKCkgfHwgbV93ZWJQYWdl
LmF1dG9TaXppbmdTaG91bGRFeHBhbmRUb1ZpZXdIZWlnaHQoKSkKICAgICAgICAgbV93ZWJQYWdl
LnNldFNpemUoc2l6ZSk7CiAKICAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IG1fd2ViUGFnZS5t
YWluRnJhbWVWaWV3KCk7CkBAIC02MDcsNyArNjA3LDcgQEAgdm9pZCBUaWxlZENvcmVBbmltYXRp
b25EcmF3aW5nQXJlYTo6dXBkYXRlR2VvbWV0cnkoY29uc3QgSW50U2l6ZSYgdmlld1NpemUsIGJv
b2wKIAogICAgIG1fd2ViUGFnZS5sYXlvdXRJZk5lZWRlZCgpOwogCi0gICAgaWYgKG1fd2ViUGFn
ZS52aWV3TGF5b3V0U2l6ZSgpLndpZHRoKCkgJiYgZnJhbWVWaWV3KSB7CisgICAgaWYgKG1fd2Vi
UGFnZS5taW5pbXVtU2l6ZUZvckF1dG9MYXlvdXQoKS53aWR0aCgpICYmIGZyYW1lVmlldykgewog
ICAgICAgICBjb250ZW50U2l6ZSA9IGZyYW1lVmlldy0+YXV0b1NpemluZ0ludHJpbnNpY0NvbnRl
bnRTaXplKCk7CiAgICAgICAgIHNpemUgPSBjb250ZW50U2l6ZTsKICAgICB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>