<?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>234506</bug_id>
          
          <creation_ts>2021-12-20 00:29:29 -0800</creation_ts>
          <short_desc>[LCMS] Use std::unqiue_ptr to retain LCMS objects</short_desc>
          <delta_ts>2021-12-21 04:03:31 -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>WebCore Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=233364</see_also>
          <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="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</reporter>
          <assigned_to name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</assigned_to>
          <cc>annulen</cc>
    
    <cc>aperez</cc>
    
    <cc>berto</cc>
    
    <cc>cgarcia</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1825547</commentid>
    <comment_count>0</comment_count>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-12-20 00:29:29 -0800</bug_when>
    <thetext>As pointed out on https://bugs.webkit.org/show_bug.cgi?id=233364#c7, I&apos;d like to introduce LCMSUniqeptr to handle cmsHTRANSFORM and cmsHPROFILE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825553</commentid>
    <comment_count>1</comment_count>
      <attachid>447590</attachid>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-12-20 01:02:04 -0800</bug_when>
    <thetext>Created attachment 447590
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825601</commentid>
    <comment_count>2</comment_count>
      <attachid>447590</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2021-12-20 07:24:43 -0800</bug_when>
    <thetext>Comment on attachment 447590
Patch

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

&gt; Source/WebCore/platform/graphics/lcms/LCMSUniquePtr.h:38
&gt; +    void operator() (cmsHPROFILE ptr) const

Why do these have to be const?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825922</commentid>
    <comment_count>3</comment_count>
    <who name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</who>
    <bug_when>2021-12-21 01:34:34 -0800</bug_when>
    <thetext>&gt; Why do these have to be const?

Hmm, I&apos;m not sure it&apos;s necesarry to be const but following the signature of the default deleter:
 void operator()(T* ptr) const;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825938</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-12-21 02:07:30 -0800</bug_when>
    <thetext>Committed r287306 (245458@main): &lt;https://commits.webkit.org/245458@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 447590.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1825939</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-12-21 02:08:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/86760146&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>447590</attachid>
            <date>2021-12-20 01:02:04 -0800</date>
            <delta_ts>2021-12-21 04:03:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-234506-20211220180206.patch</filename>
            <type>text/plain</type>
            <size>19157</size>
            <attacher name="Yoshiaki Jitsukawa">yoshiaki.jitsukawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjg3MjMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjYxMDZiYmEyNGQxNGE3
Y2U1NGNlYTRhMzU5ZWIyY2ZkZTZiYjE5MC4uMGRkZDZlMGFjNjdkZmMxZTU2YjQ5ZGM3M2U1ZDli
ZjY4YjY4Yjk3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDIxLTEyLTIwICBZb3No
aWFraSBKaXRzdWthd2EgIDx5b3NoaWFraS5qaXRzdWthd2FAc29ueS5jb20+CisKKyAgICAgICAg
W0xDTVNdIFVzZSBzdGQ6OnVucWl1ZV9wdHIgdG8gcmV0YWluIExDTVMgb2JqZWN0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjM0NTA2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFw
aGljcy9sY21zL0xDTVNVbmlxdWVQdHIuaDogQWRkZWQuCisgICAgICAgIEFkZCBMQ01TVW5pcXVl
UHRyLmggYW5kIHNwZWNpYWxpemUgc3RkOjp1bmlxdWVfcHRyIHdpdGggZGVsZXRlcnMuCisgICAg
ICAgIExDTVNQcm9maWxlUHRyIGlzIGZvciBjbXNIUFJPRklMRSB3aXRoIGNtc0Nsb3NlUHJvZmls
ZSgpIGFzIHRoZSBkZWxldGVyLgorICAgICAgICBMQ01TVHJhbnNmb3JtUHRyIGlzIGZvciBjbXNI
VFJBTlNGT1JNIHdpdGggY21zRGVsZXRlVHJhbnNmb3JtKCkgYXMgdGhlIGRlbGV0ZXIuCisKKyAg
ICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgQWRkIFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvbGNtcyB0byBXZWJDb3JlX1BSSVZBVEVfSU5DTFVERV9ESVJFQ1RPUklFUy4KKyAgICAg
ICAgQWRkIExDTVNVbmlxdWVQdHIuaCB0byBXZWJDb3JlX1BSSVZBVEVfRlJBTUVXT1JLX0hFQURF
UlMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybURpc3BsYXkuY3BwOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1BsYXRmb3JtRGlzcGxheS5oOgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL3gxMS9QbGF0Zm9ybURpc3BsYXlYMTEuY3BwOgorICAgICAgICBV
c2UgTENNU1Byb2ZpbGVQdHIgdG8gcmV0YWluIElDQyBQcm9maWxlLgorCisgICAgICAgICogcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcDoKKyAgICAgICAg
KiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuaDoKKyAgICAg
ICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVneGwvSlBFR1hMSW1hZ2VEZWNvZGVyLmNw
cDoKKyAgICAgICAgKiBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVneGwvSlBFR1hMSW1hZ2VE
ZWNvZGVyLmg6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdl
RGVjb2Rlci5jcHA6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0lt
YWdlRGVjb2Rlci5oOgorICAgICAgICBVc2UgTENNU1Byb2ZpbGVQdHIgdG8gcmV0YWluIGNvbG9y
IHRyYW5zZm9ybS4KKyAgICAgICAgUmVtb3ZlIHRoZSBtX2ljY1Byb2ZpbGUgY2xhc3MgbWVtYmVy
IGJlY2F1c2UgbV9pY2NUcmFuc2Zvcm0gYWxzbyByZXRhaW5zIGEKKyAgICAgICAgcmVmZXJlbmNl
IHRvIHRoZSBMQ01TJ3MgcHJvZmlsZSBhbmQgbV9pY2NQcm9maWxlIGNhbiBiZSByZW1vdmVkLgor
CiAyMDIxLTEyLTE4ICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBI
YXNoIHRhYmxlcywgcmVhZC93cml0ZSwgYW5kIGhlYXAgbWVtb3J5IGFyZSB1c2VkIHVubmVjZXNz
YXJpbHksIHdoaWNoIG1heSBodXJ0IHBlcmZvcm1hbmNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4
IDA5NzczNDg4ZGIwYThiMjhiZGRjMjkyZDY1OTE5MmYyM2MzNDRlN2IuLmVkYWQ4YWRjMDM0ZmRk
ZDYyYTk0Yjg3NzRjZmU2NWU4MGNiMGUwZDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NN
YWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CkBAIC0xOTYz
LDYgKzE5NjMsMTQgQEAgaWYgKEVOQUJMRV9VU0VSX01FU1NBR0VfSEFORExFUlMpCiBlbmRpZiAo
KQogCiBpZiAoVVNFX0xDTVMpCisgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0lOQ0xV
REVfRElSRUNUT1JJRVMKKyAgICAgICAgIiR7V0VCQ09SRV9ESVJ9L3BsYXRmb3JtL2dyYXBoaWNz
L2xjbXMiCisgICAgKQorCisgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9QUklWQVRFX0ZSQU1FV09S
S19IRUFERVJTCisgICAgICAgIHBsYXRmb3JtL2dyYXBoaWNzL2xjbXMvTENNU1VuaXF1ZVB0ci5o
CisgICAgKQorCiAgICAgbGlzdChBUFBFTkQgV2ViQ29yZV9MSUJSQVJJRVMgTENNUzI6OkxDTVMy
KQogZW5kaWYgKCkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvUGxhdGZvcm1EaXNwbGF5LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L1BsYXRmb3JtRGlzcGxheS5jcHAKaW5kZXggOWQ0YzAwNDQyYzQ5OTg3YmEyNDdkMTA2OTUxZWJk
NjhhYzA1ZDBiNi4uMGRiMTcwNzA5MjJjYTAzY2Q1NzQzMzg3MTY3MGExMWRmNjcxYTNjYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1EaXNwbGF5
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybURpc3Bs
YXkuY3BwCkBAIC04MCwxMCArODAsNiBAQAogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5o
PgogI2VuZGlmCiAKLSNpZiBVU0UoTENNUykKLSNpbmNsdWRlIDxsY21zMi5oPgotI2VuZGlmCi0K
ICNpZiBVU0UoQVRTUEkpCiAjaW5jbHVkZSA8d3RmL2dsaWIvR1VuaXF1ZVB0ci5oPgogI2VuZGlm
CkBAIC0xODksMTAgKzE4NSw2IEBAIFBsYXRmb3JtRGlzcGxheTo6flBsYXRmb3JtRGlzcGxheSgp
CiAjZW5kaWYKICAgICBpZiAoc19zaGFyZWREaXNwbGF5Rm9yQ29tcG9zaXRpbmcgPT0gdGhpcykK
ICAgICAgICAgc19zaGFyZWREaXNwbGF5Rm9yQ29tcG9zaXRpbmcgPSBudWxscHRyOwotI2lmIFVT
RShMQ01TKQotICAgIGlmIChtX2ljY1Byb2ZpbGUpCi0gICAgICAgIGNtc0Nsb3NlUHJvZmlsZSht
X2ljY1Byb2ZpbGUpOwotI2VuZGlmCiB9CiAKICNpZiBVU0UoRUdMKSB8fCBVU0UoR0xYKQpAQCAt
MjkyLDggKzI4NCw4IEBAIHZvaWQgUGxhdGZvcm1EaXNwbGF5Ojp0ZXJtaW5hdGVFR0xEaXNwbGF5
KCkKIGNtc0hQUk9GSUxFIFBsYXRmb3JtRGlzcGxheTo6Y29sb3JQcm9maWxlKCkgY29uc3QKIHsK
ICAgICBpZiAoIW1faWNjUHJvZmlsZSkKLSAgICAgICAgbV9pY2NQcm9maWxlID0gY21zQ3JlYXRl
X3NSR0JQcm9maWxlKCk7Ci0gICAgcmV0dXJuIG1faWNjUHJvZmlsZTsKKyAgICAgICAgbV9pY2NQ
cm9maWxlID0gTENNU1Byb2ZpbGVQdHIoY21zQ3JlYXRlX3NSR0JQcm9maWxlKCkpOworICAgIHJl
dHVybiBtX2ljY1Byb2ZpbGUuZ2V0KCk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGxhdGZvcm1EaXNwbGF5LmggYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QbGF0Zm9ybURpc3BsYXkuaAppbmRleCA4ZDE5ODU0YTYx
YmQ5MTQ2MjE4Yzc3N2RlMTVkMWNiNDM2OWQ4MTg1Li5iZWM1OWEwMDJmZjMzMDViY2Y0NzNmNzhl
ZTIyOTlkMmNjZTQ1OWU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9QbGF0Zm9ybURpc3BsYXkuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9QbGF0Zm9ybURpc3BsYXkuaApAQCAtNDEsNyArNDEsNyBAQCB0eXBlZGVmIHN0cnVjdCBf
R3N0R0xEaXNwbGF5IEdzdEdMRGlzcGxheTsKICNlbmRpZiAvLyBFTkFCTEUoVklERU8pICYmIFVT
RShHU1RSRUFNRVJfR0wpCiAKICNpZiBVU0UoTENNUykKLXR5cGVkZWYgdm9pZCogY21zSFBST0ZJ
TEU7CisjaW5jbHVkZSAiTENNU1VuaXF1ZVB0ci5oIgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKQEAgLTExNCw3ICsxMTQsNyBAQCBwcm90ZWN0ZWQ6CiAjZW5kaWYKIAogI2lmIFVTRShM
Q01TKQotICAgIG11dGFibGUgY21zSFBST0ZJTEUgbV9pY2NQcm9maWxlIHsgbnVsbHB0ciB9Owor
ICAgIG11dGFibGUgTENNU1Byb2ZpbGVQdHIgbV9pY2NQcm9maWxlOwogI2VuZGlmCiAKICNpZiBV
U0UoQVRTUEkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9s
Y21zL0xDTVNVbmlxdWVQdHIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2xj
bXMvTENNU1VuaXF1ZVB0ci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmZhZmM1MDEyN2IwODNiNWZiNmYyMDY2N2Nj
YjkwYjJiYWRkMGE4YTIKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9sY21zL0xDTVNVbmlxdWVQdHIuaApAQCAtMCwwICsxLDU2IEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDIxIFNvbnkgSW50ZXJhY3RpdmUgRW50ZXJ0YWlubWVudCBJbmMuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRF
UiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVS
LCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDxsY21zMi5oPgorI2luY2x1ZGUgPG1lbW9y
eT4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCisvLyBTcGVjaWFsaXppbmcgdW5pcXVlX3B0ciBm
b3I6CisvLyAgIHR5cGVkZWYgdm9pZCogY21zSFBST0ZJTEU7CisvLyAgIHR5cGVkZWYgdm9pZCog
Y21zSFRSQU5TRk9STTsKKworc3RydWN0IExDTVNQcm9maWxlRGVsZXRlciB7CisgICAgdm9pZCBv
cGVyYXRvcigpIChjbXNIUFJPRklMRSBwdHIpIGNvbnN0CisgICAgeworICAgICAgICBpZiAocHRy
KQorICAgICAgICAgICAgY21zQ2xvc2VQcm9maWxlKHB0cik7CisgICAgfQorfTsKK3VzaW5nIExD
TVNQcm9maWxlUHRyID0gc3RkOjp1bmlxdWVfcHRyPHZvaWQsIExDTVNQcm9maWxlRGVsZXRlcj47
CisKK3N0cnVjdCBMQ01TVHJhbnNmb3JtRGVsZXRlciB7CisgICAgdm9pZCBvcGVyYXRvcigpIChj
bXNIVFJBTlNGT1JNIHB0cikgY29uc3QKKyAgICB7CisgICAgICAgIGlmIChwdHIpCisgICAgICAg
ICAgICBjbXNEZWxldGVUcmFuc2Zvcm0ocHRyKTsKKyAgICB9Cit9OwordXNpbmcgTENNU1RyYW5z
Zm9ybVB0ciA9IHN0ZDo6dW5pcXVlX3B0cjx2b2lkLCBMQ01TVHJhbnNmb3JtRGVsZXRlcj47CisK
KworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MveDExL1BsYXRmb3JtRGlzcGxheVgxMS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy94MTEvUGxhdGZvcm1EaXNwbGF5WDExLmNwcAppbmRleCAxZjY5
YjdkOTFmM2U3ZjFhNjI0NTU3NTdmMjZjNTRkZjlmOTI0ZjY0Li4yMjE1NGM4NzYzZWZmMTViZjdj
ZDg0ZmQ2MjJkYjM2YWE4N2RiZDMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy94MTEvUGxhdGZvcm1EaXNwbGF5WDExLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy94MTEvUGxhdGZvcm1EaXNwbGF5WDExLmNwcApAQCAtNDcsMTAg
KzQ3LDYgQEAKICNpbmNsdWRlIDxHTC9nbHguaD4KICNlbmRpZgogCi0jaWYgVVNFKExDTVMpCi0j
aW5jbHVkZSA8bGNtczIuaD4KLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIHN0ZDo6
dW5pcXVlX3B0cjxQbGF0Zm9ybURpc3BsYXk+IFBsYXRmb3JtRGlzcGxheVgxMTo6Y3JlYXRlKCkK
QEAgLTE4NSw3ICsxODEsNyBAQCB2b2lkKiBQbGF0Zm9ybURpc3BsYXlYMTE6OnZpc3VhbCgpIGNv
bnN0CiBjbXNIUFJPRklMRSBQbGF0Zm9ybURpc3BsYXlYMTE6OmNvbG9yUHJvZmlsZSgpIGNvbnN0
CiB7CiAgICAgaWYgKG1faWNjUHJvZmlsZSkKLSAgICAgICAgcmV0dXJuIG1faWNjUHJvZmlsZTsK
KyAgICAgICAgcmV0dXJuIG1faWNjUHJvZmlsZS5nZXQoKTsKIAogICAgIEF0b20gaWNjQXRvbSA9
IFhJbnRlcm5BdG9tKG1fZGlzcGxheSwgIl9JQ0NfUFJPRklMRSIsIEZhbHNlKTsKICAgICBBdG9t
IHR5cGU7CkBAIC0yMTEsMTMgKzIwNywxMyBAQCBjbXNIUFJPRklMRSBQbGF0Zm9ybURpc3BsYXlY
MTE6OmNvbG9yUHJvZmlsZSgpIGNvbnN0CiAgICAgICAgIH0KIAogICAgICAgICBpZiAoZGF0YVNp
emUpCi0gICAgICAgICAgICBtX2ljY1Byb2ZpbGUgPSBjbXNPcGVuUHJvZmlsZUZyb21NZW0oZGF0
YSwgZGF0YVNpemUpOworICAgICAgICAgICAgbV9pY2NQcm9maWxlID0gTENNU1Byb2ZpbGVQdHIo
Y21zT3BlblByb2ZpbGVGcm9tTWVtKGRhdGEsIGRhdGFTaXplKSk7CiAgICAgfQogCiAgICAgaWYg
KGRhdGEpCiAgICAgICAgIFhGcmVlKGRhdGEpOwogCi0gICAgcmV0dXJuIG1faWNjUHJvZmlsZSA/
IG1faWNjUHJvZmlsZSA6IFBsYXRmb3JtRGlzcGxheTo6Y29sb3JQcm9maWxlKCk7CisgICAgcmV0
dXJuIG1faWNjUHJvZmlsZSA/IG1faWNjUHJvZmlsZS5nZXQoKSA6IFBsYXRmb3JtRGlzcGxheTo6
Y29sb3JQcm9maWxlKCk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5j
cHAKaW5kZXggOGZiOTIyMGVlMzdmNmFkODE5MzgyMDc3NGNlMjJiMWQ1Y2MzYTU2My4uZjQyM2Nj
YzljZTEyN2VmN2FlNzZjOTEyODI0YWJlODc3M2ZiNzJkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFn
ZURlY29kZXIuY3BwCkBAIC00MSw5ICs0MSw2IEBACiAjaW5jbHVkZSAiSlBFR0ltYWdlRGVjb2Rl
ci5oIgogCiAjaW5jbHVkZSAiUGxhdGZvcm1EaXNwbGF5LmgiCi0jaWYgVVNFKExDTVMpCi0jaW5j
bHVkZSA8bGNtczIuaD4KLSNlbmRpZgogCiBleHRlcm4gIkMiIHsKICNpbmNsdWRlIDxzZXRqbXAu
aD4KQEAgLTU3MSwxNCArNTY4LDcgQEAgdm9pZCBKUEVHSW1hZ2VEZWNvZGVyOjpjbGVhcigpCiB7
CiAgICAgbV9yZWFkZXIgPSBudWxscHRyOwogI2lmIFVTRShMQ01TKQotICAgIGlmIChtX2ljY1Ry
YW5zZm9ybSkgewotICAgICAgICBjbXNEZWxldGVUcmFuc2Zvcm0obV9pY2NUcmFuc2Zvcm0pOwot
ICAgICAgICBtX2ljY1RyYW5zZm9ybSA9IG51bGxwdHI7Ci0gICAgfQotICAgIGlmIChtX2ljY1By
b2ZpbGUpIHsKLSAgICAgICAgY21zQ2xvc2VQcm9maWxlKG1faWNjUHJvZmlsZSk7Ci0gICAgICAg
IG1faWNjUHJvZmlsZSA9IG51bGxwdHI7Ci0gICAgfQorICAgIG1faWNjVHJhbnNmb3JtLnJlc2V0
KCk7CiAjZW5kaWYKIH0KIApAQCAtNjM3LDcgKzYyNyw3IEBAIGJvb2wgSlBFR0ltYWdlRGVjb2Rl
cjo6b3V0cHV0U2NhbmxpbmVzKFNjYWxhYmxlSW1hZ2VEZWNvZGVyRnJhbWUmIGJ1ZmZlcikKIAog
I2lmIFVTRShMQ01TKQogICAgICAgICBpZiAobV9pY2NUcmFuc2Zvcm0pCi0gICAgICAgICAgICBj
bXNEb1RyYW5zZm9ybShtX2ljY1RyYW5zZm9ybSwgcm93LCByb3csIGluZm8tPm91dHB1dF93aWR0
aCk7CisgICAgICAgICAgICBjbXNEb1RyYW5zZm9ybShtX2ljY1RyYW5zZm9ybS5nZXQoKSwgcm93
LCByb3csIGluZm8tPm91dHB1dF93aWR0aCk7CiAjZW5kaWYKICAgICB9CiAgICAgcmV0dXJuIHRy
dWU7CkBAIC02NzAsNyArNjYwLDcgQEAgYm9vbCBKUEVHSW1hZ2VEZWNvZGVyOjpvdXRwdXRTY2Fu
bGluZXMoKQogCiAjaWYgVVNFKExDTVMpCiAgICAgICAgICAgICBpZiAobV9pY2NUcmFuc2Zvcm0p
Ci0gICAgICAgICAgICAgICAgY21zRG9UcmFuc2Zvcm0obV9pY2NUcmFuc2Zvcm0sIHJvdywgcm93
LCBpbmZvLT5vdXRwdXRfd2lkdGgpOworICAgICAgICAgICAgICAgIGNtc0RvVHJhbnNmb3JtKG1f
aWNjVHJhbnNmb3JtLmdldCgpLCByb3csIHJvdywgaW5mby0+b3V0cHV0X3dpZHRoKTsKICNlbmRp
ZgogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC03MzEsMTUgKzcyMSwxNSBA
QCB2b2lkIEpQRUdJbWFnZURlY29kZXI6OnNldElDQ1Byb2ZpbGUoUmVmUHRyPFNoYXJlZEJ1ZmZl
cj4mJiBidWZmZXIpCiAgICAgaWYgKCFidWZmZXIpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1f
aWNjUHJvZmlsZSA9IGNtc09wZW5Qcm9maWxlRnJvbU1lbShidWZmZXItPmRhdGEoKSwgYnVmZmVy
LT5zaXplKCkpOwotICAgIGlmICghbV9pY2NQcm9maWxlKQorICAgIGF1dG8gaWNjUHJvZmlsZSA9
IExDTVNQcm9maWxlUHRyKGNtc09wZW5Qcm9maWxlRnJvbU1lbShidWZmZXItPmRhdGEoKSwgYnVm
ZmVyLT5zaXplKCkpKTsKKyAgICBpZiAoIWljY1Byb2ZpbGUpCiAgICAgICAgIHJldHVybjsKIAog
ICAgIGF1dG8qIGRpc3BsYXlQcm9maWxlID0gUGxhdGZvcm1EaXNwbGF5OjpzaGFyZWREaXNwbGF5
KCkuY29sb3JQcm9maWxlKCk7Ci0gICAgaWYgKGNtc0dldENvbG9yU3BhY2UobV9pY2NQcm9maWxl
KSAhPSBjbXNTaWdSZ2JEYXRhIHx8IGNtc0dldENvbG9yU3BhY2UoZGlzcGxheVByb2ZpbGUpICE9
IGNtc1NpZ1JnYkRhdGEpCisgICAgaWYgKGNtc0dldENvbG9yU3BhY2UoaWNjUHJvZmlsZS5nZXQo
KSkgIT0gY21zU2lnUmdiRGF0YSB8fCBjbXNHZXRDb2xvclNwYWNlKGRpc3BsYXlQcm9maWxlKSAh
PSBjbXNTaWdSZ2JEYXRhKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2ljY1RyYW5zZm9ybSA9
IGNtc0NyZWF0ZVRyYW5zZm9ybShtX2ljY1Byb2ZpbGUsIFRZUEVfQkdSQV84LCBkaXNwbGF5UHJv
ZmlsZSwgVFlQRV9CR1JBXzgsIElOVEVOVF9SRUxBVElWRV9DT0xPUklNRVRSSUMsIDApOworICAg
IG1faWNjVHJhbnNmb3JtID0gTENNU1RyYW5zZm9ybVB0cihjbXNDcmVhdGVUcmFuc2Zvcm0oaWNj
UHJvZmlsZS5nZXQoKSwgVFlQRV9CR1JBXzgsIGRpc3BsYXlQcm9maWxlLCBUWVBFX0JHUkFfOCwg
SU5URU5UX1JFTEFUSVZFX0NPTE9SSU1FVFJJQywgMCkpOwogfQogI2VuZGlmCiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcvSlBFR0ltYWdl
RGVjb2Rlci5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9K
UEVHSW1hZ2VEZWNvZGVyLmgKaW5kZXggZDJkN2ZhNmFiNDliNDI0N2FmZmI4ZTFmYmVlNDY5NTNi
MGNiMDVjYi4uYWE4NzVkZTAwZmFhOWFkZWQ2YjYwOTM1NDU4NDFlODE5MWJiMjk0NCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1h
Z2VEZWNvZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMv
anBlZy9KUEVHSW1hZ2VEZWNvZGVyLmgKQEAgLTM3LDggKzM3LDcgQEAgZXh0ZXJuICJDIiB7CiB9
CiAKICNpZiBVU0UoTENNUykKLXR5cGVkZWYgdm9pZCogY21zSFBST0ZJTEU7Ci10eXBlZGVmIHZv
aWQqIGNtc0hUUkFOU0ZPUk07CisjaW5jbHVkZSAiTENNU1VuaXF1ZVB0ci5oIgogI2VuZGlmCiAK
IG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTkwLDggKzg5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiAgICAgICAgIHN0ZDo6dW5pcXVlX3B0cjxKUEVHSW1hZ2VSZWFkZXI+IG1fcmVhZGVyOwog
I2lmIFVTRShMQ01TKQotICAgICAgICBjbXNIUFJPRklMRSBtX2ljY1Byb2ZpbGUgeyBudWxscHRy
IH07Ci0gICAgICAgIGNtc0hUUkFOU0ZPUk0gbV9pY2NUcmFuc2Zvcm0geyBudWxscHRyIH07Cisg
ICAgICAgIExDTVNUcmFuc2Zvcm1QdHIgbV9pY2NUcmFuc2Zvcm07CiAjZW5kaWYKICAgICB9Owog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVn
eGwvSlBFR1hMSW1hZ2VEZWNvZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL2pwZWd4bC9KUEVHWExJbWFnZURlY29kZXIuY3BwCmluZGV4IDQxYTNiNWYzYmI3
NGQ5NWQ2N2M5MGZlYTRiMjU3ZTk3ZTkyODE0NGIuLjRjNWQxYTc5ZDgxMWM0NThkZWM0Nzc3N2M5
Zjc2OGRiZTg3MjE0NTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL2pwZWd4bC9KUEVHWExJbWFnZURlY29kZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWd4bC9KUEVHWExJbWFnZURlY29kZXIuY3Bw
CkBAIC0zMCw3ICszMCw2IEBACiAKICNpZiBVU0UoTENNUykKICNpbmNsdWRlICJQbGF0Zm9ybURp
c3BsYXkuaCIKLSNpbmNsdWRlIDxsY21zMi5oPgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTM3MywxNyArMzcyLDE0IEBAIHZvaWQgSlBFR1hMSW1hZ2VEZWNvZGVyOjppbWFnZU91
dChzaXplX3QgeCwgc2l6ZV90IHksIHNpemVfdCBudW1QaXhlbHMsIGNvbnN0IHVpCiAKICNpZiBV
U0UoTENNUykKICAgICBpZiAobV9pY2NUcmFuc2Zvcm0pCi0gICAgICAgIGNtc0RvVHJhbnNmb3Jt
KG1faWNjVHJhbnNmb3JtLCByb3csIHJvdywgbnVtUGl4ZWxzKTsKKyAgICAgICAgY21zRG9UcmFu
c2Zvcm0obV9pY2NUcmFuc2Zvcm0uZ2V0KCksIHJvdywgcm93LCBudW1QaXhlbHMpOwogI2VuZGlm
CiB9CiAKICNpZiBVU0UoTENNUykKIHZvaWQgSlBFR1hMSW1hZ2VEZWNvZGVyOjpjbGVhckNvbG9y
VHJhbnNmb3JtKCkKIHsKLSAgICBpZiAobV9pY2NUcmFuc2Zvcm0pIHsKLSAgICAgICAgY21zRGVs
ZXRlVHJhbnNmb3JtKG1faWNjVHJhbnNmb3JtKTsKLSAgICAgICAgbV9pY2NUcmFuc2Zvcm0gPSBu
dWxscHRyOwotICAgIH0KKyAgICBtX2ljY1RyYW5zZm9ybS5yZXNldCgpOwogfQogCiB2b2lkIEpQ
RUdYTEltYWdlRGVjb2Rlcjo6cHJlcGFyZUNvbG9yVHJhbnNmb3JtKCkKQEAgLTM5NSwyMSArMzkx
LDE3IEBAIHZvaWQgSlBFR1hMSW1hZ2VEZWNvZGVyOjpwcmVwYXJlQ29sb3JUcmFuc2Zvcm0oKQog
ICAgIGlmICghZGlzcGxheVByb2ZpbGUpCiAgICAgICAgIHJldHVybjsKIAotICAgIGNtc0hQUk9G
SUxFIHByb2ZpbGUgPSB0cnlEZWNvZGVJQ0NDb2xvclByb2ZpbGUoKTsKKyAgICBhdXRvIHByb2Zp
bGUgPSB0cnlEZWNvZGVJQ0NDb2xvclByb2ZpbGUoKTsKICAgICBpZiAoIXByb2ZpbGUpCiAgICAg
ICAgIHJldHVybjsgLy8gVE9ETyhidWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNDIy
Mik6IFdlIHNob3VsZCB0cnkgdG8gdXNlIGVuY29kZWQgY29sb3IgcHJvZmlsZSBpZiBJQ0MgcHJv
ZmlsZSBpcyBub3QgYXZhaWxhYmxlLgogCiAgICAgLy8gVE9ETyhidWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIzNDIyMSk6IFdlIHNob3VsZCBoYW5kbGUgQ01ZSyBjb2xvciBidXQgaXQg
bWF5IHJlcXVpcmUgdHdvIGV4dHJhIGNoYW5uZWxzIChBbHBoYSBhbmQgSykKICAgICAvLyBhbmQg
bGlianhsIGhhcyB5ZXQgdG8gc3VwcG9ydCBpdC4gCi0gICAgaWYgKGNtc0dldENvbG9yU3BhY2Uo
cHJvZmlsZSkgPT0gY21zU2lnUmdiRGF0YSAmJiBjbXNHZXRDb2xvclNwYWNlKGRpc3BsYXlQcm9m
aWxlKSA9PSBjbXNTaWdSZ2JEYXRhKQotICAgICAgICBtX2ljY1RyYW5zZm9ybSA9IGNtc0NyZWF0
ZVRyYW5zZm9ybShwcm9maWxlLCBUWVBFX0JHUkFfOCwgZGlzcGxheVByb2ZpbGUsIFRZUEVfQkdS
QV84LCBJTlRFTlRfUkVMQVRJVkVfQ09MT1JJTUVUUklDLCAwKTsKLQotICAgIC8vIFdlIGNsb3Nl
IHRoZSBwcm9maWxlIGhlcmUuIFRoZSBwcm9maWxlIG1heSBzdGlsbCBiZSBhbGl2ZSBpZiBtX2lj
Y1RyYW5zZm9ybSBob2xkcyBhIHJlZmVyZW5jZSB0byBpdC4KLSAgICBpZiAocHJvZmlsZSkKLSAg
ICAgICAgY21zQ2xvc2VQcm9maWxlKHByb2ZpbGUpOworICAgIGlmIChjbXNHZXRDb2xvclNwYWNl
KHByb2ZpbGUuZ2V0KCkpID09IGNtc1NpZ1JnYkRhdGEgJiYgY21zR2V0Q29sb3JTcGFjZShkaXNw
bGF5UHJvZmlsZSkgPT0gY21zU2lnUmdiRGF0YSkKKyAgICAgICAgbV9pY2NUcmFuc2Zvcm0gPSBM
Q01TVHJhbnNmb3JtUHRyKGNtc0NyZWF0ZVRyYW5zZm9ybShwcm9maWxlLmdldCgpLCBUWVBFX0JH
UkFfOCwgZGlzcGxheVByb2ZpbGUsIFRZUEVfQkdSQV84LCBJTlRFTlRfUkVMQVRJVkVfQ09MT1JJ
TUVUUklDLCAwKSk7CiB9CiAKLWNtc0hQUk9GSUxFIEpQRUdYTEltYWdlRGVjb2Rlcjo6dHJ5RGVj
b2RlSUNDQ29sb3JQcm9maWxlKCkKK0xDTVNQcm9maWxlUHRyIEpQRUdYTEltYWdlRGVjb2Rlcjo6
dHJ5RGVjb2RlSUNDQ29sb3JQcm9maWxlKCkKIHsKICAgICBzaXplX3QgcHJvZmlsZVNpemU7CiAg
ICAgaWYgKEp4bERlY29kZXJHZXRJQ0NQcm9maWxlU2l6ZShtX2RlY29kZXIuZ2V0KCksICZzX3Bp
eGVsRm9ybWF0LCBKWExfQ09MT1JfUFJPRklMRV9UQVJHRVRfREFUQSwgJnByb2ZpbGVTaXplKSAh
PSBKWExfREVDX1NVQ0NFU1MpCkBAIC00MTksNyArNDExLDcgQEAgY21zSFBST0ZJTEUgSlBFR1hM
SW1hZ2VEZWNvZGVyOjp0cnlEZWNvZGVJQ0NDb2xvclByb2ZpbGUoKQogICAgIGlmIChKeGxEZWNv
ZGVyR2V0Q29sb3JBc0lDQ1Byb2ZpbGUobV9kZWNvZGVyLmdldCgpLCAmc19waXhlbEZvcm1hdCwg
SlhMX0NPTE9SX1BST0ZJTEVfVEFSR0VUX0RBVEEsIHByb2ZpbGVEYXRhLmRhdGEoKSwgcHJvZmls
ZURhdGEuc2l6ZSgpKSAhPSBKWExfREVDX1NVQ0NFU1MpCiAgICAgICAgIHJldHVybiBudWxscHRy
OwogCi0gICAgcmV0dXJuIGNtc09wZW5Qcm9maWxlRnJvbU1lbShwcm9maWxlRGF0YS5kYXRhKCks
IHByb2ZpbGVEYXRhLnNpemUoKSk7CisgICAgcmV0dXJuIExDTVNQcm9maWxlUHRyKGNtc09wZW5Q
cm9maWxlRnJvbU1lbShwcm9maWxlRGF0YS5kYXRhKCksIHByb2ZpbGVEYXRhLnNpemUoKSkpOwog
fQogCiAjZW5kaWYgLy8gVVNFKExDTVMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVneGwvSlBFR1hMSW1hZ2VEZWNvZGVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVneGwvSlBFR1hMSW1hZ2VEZWNvZGVy
LmgKaW5kZXggMzRmYWVmMDljMjQ5MzBlYmIyMDAxYzY5NDRkYjMyN2ZjODAwNTJjZi4uN2FlNTZl
ZTBmZDQyMDIxY2Q3MzQ2YzMwNzI2ZGUzNzU0NjFhMGY2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZ3hsL0pQRUdYTEltYWdlRGVjb2Rlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWd4bC9KUEVH
WExJbWFnZURlY29kZXIuaApAQCAtMzIsOCArMzIsNyBAQAogI2luY2x1ZGUgPGp4bC9kZWNvZGVf
Y3h4Lmg+CiAKICNpZiBVU0UoTENNUykKLXR5cGVkZWYgdm9pZCogY21zSFBST0ZJTEU7Ci10eXBl
ZGVmIHZvaWQqIGNtc0hUUkFOU0ZPUk07CisjaW5jbHVkZSAiTENNU1VuaXF1ZVB0ci5oIgogI2Vu
ZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTkxLDcgKzkwLDcgQEAgcHJpdmF0ZToKICNp
ZiBVU0UoTENNUykKICAgICB2b2lkIGNsZWFyQ29sb3JUcmFuc2Zvcm0oKTsKICAgICB2b2lkIHBy
ZXBhcmVDb2xvclRyYW5zZm9ybSgpOwotICAgIGNtc0hQUk9GSUxFIHRyeURlY29kZUlDQ0NvbG9y
UHJvZmlsZSgpOworICAgIExDTVNQcm9maWxlUHRyIHRyeURlY29kZUlDQ0NvbG9yUHJvZmlsZSgp
OwogI2VuZGlmCiAKICAgICBKeGxEZWNvZGVyUHRyIG1fZGVjb2RlcjsKQEAgLTEwNSw3ICsxMDQs
NyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pc0xhc3RGcmFtZUhlYWRlclJlY2VpdmVkIHsgZmFs
c2UgfTsgLy8gSWYgdGhpcyBpcyB0cnVlLCB3ZSBrbm93IHdlIGRvbid0IG5lZWQgdG8gdXBkYXRl
IG1fZnJhbWVDb3VudC4KIAogI2lmIFVTRShMQ01TKQotICAgIGNtc0hUUkFOU0ZPUk0gbV9pY2NU
cmFuc2Zvcm0geyBudWxscHRyIH07CisgICAgTENNU1RyYW5zZm9ybVB0ciBtX2ljY1RyYW5zZm9y
bTsKICNlbmRpZgogfTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAppbmRleCA0Y2JkMzIz
ZDlhNzUwMjZlZjg2NThmMzgxNmRkNzM4ZDM3Y2E4ZWQ5Li4yNzA5YjdjNjhiZjUzMGQxOTVkNzY2
NmEzZDZhY2U1MDAxM2JiZTM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcApAQCAtNDcs
MTAgKzQ3LDYgQEAKICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CiAjaW5jbHVkZSA8d3Rm
L1VuaXF1ZUFycmF5Lmg+CiAKLSNpZiBVU0UoTENNUykKLSNpbmNsdWRlIDxsY21zMi5oPgotI2Vu
ZGlmCi0KICNpZiBkZWZpbmVkKFBOR19MSUJQTkdfVkVSX01BSk9SKSAmJiBkZWZpbmVkKFBOR19M
SUJQTkdfVkVSX01JTk9SKSAmJiAoUE5HX0xJQlBOR19WRVJfTUFKT1IgPiAxIHx8IChQTkdfTElC
UE5HX1ZFUl9NQUpPUiA9PSAxICYmIFBOR19MSUJQTkdfVkVSX01JTk9SID49IDQpKQogI2RlZmlu
ZSBKTVBCVUYocG5nX3B0cikgcG5nX2ptcGJ1ZihwbmdfcHRyKQogI2Vsc2UKQEAgLTI3NCwxNCAr
MjcwLDcgQEAgdm9pZCBQTkdJbWFnZURlY29kZXI6OmNsZWFyKCkKIHsKICAgICBtX3JlYWRlciA9
IG51bGxwdHI7CiAjaWYgVVNFKExDTVMpCi0gICAgaWYgKG1faWNjVHJhbnNmb3JtKSB7Ci0gICAg
ICAgIGNtc0RlbGV0ZVRyYW5zZm9ybShtX2ljY1RyYW5zZm9ybSk7Ci0gICAgICAgIG1faWNjVHJh
bnNmb3JtID0gbnVsbHB0cjsKLSAgICB9Ci0gICAgaWYgKG1faWNjUHJvZmlsZSkgewotICAgICAg
ICBjbXNDbG9zZVByb2ZpbGUobV9pY2NQcm9maWxlKTsKLSAgICAgICAgbV9pY2NQcm9maWxlID0g
bnVsbHB0cjsKLSAgICB9CisgICAgbV9pY2NUcmFuc2Zvcm0ucmVzZXQoKTsKICNlbmRpZgogfQog
CkBAIC00MTIsMTEgKzQwMSwxMSBAQCB2b2lkIFBOR0ltYWdlRGVjb2Rlcjo6aGVhZGVyQXZhaWxh
YmxlKCkKICAgICAgICAgcG5nX3VpbnRfMzIgaWNjUHJvZmlsZURhdGFTaXplOwogICAgICAgICBp
bnQgY29tcHJlc3Npb25UeXBlOwogICAgICAgICBpZiAocG5nX2dldF9pQ0NQKHBuZywgaW5mbywg
JmljY1Byb2ZpbGVUaXRsZSwgJmNvbXByZXNzaW9uVHlwZSwgJmljY1Byb2ZpbGVEYXRhLCAmaWNj
UHJvZmlsZURhdGFTaXplKSkgewotICAgICAgICAgICAgbV9pY2NQcm9maWxlID0gY21zT3BlblBy
b2ZpbGVGcm9tTWVtKGljY1Byb2ZpbGVEYXRhLCBpY2NQcm9maWxlRGF0YVNpemUpOwotICAgICAg
ICAgICAgaWYgKG1faWNjUHJvZmlsZSkgeworICAgICAgICAgICAgYXV0byBpY2NQcm9maWxlID0g
TENNU1Byb2ZpbGVQdHIoY21zT3BlblByb2ZpbGVGcm9tTWVtKGljY1Byb2ZpbGVEYXRhLCBpY2NQ
cm9maWxlRGF0YVNpemUpKTsKKyAgICAgICAgICAgIGlmIChpY2NQcm9maWxlKSB7CiAgICAgICAg
ICAgICAgICAgYXV0byogZGlzcGxheVByb2ZpbGUgPSBQbGF0Zm9ybURpc3BsYXk6OnNoYXJlZERp
c3BsYXkoKS5jb2xvclByb2ZpbGUoKTsKLSAgICAgICAgICAgICAgICBpZiAoY21zR2V0Q29sb3JT
cGFjZShtX2ljY1Byb2ZpbGUpID09IGNtc1NpZ1JnYkRhdGEgJiYgY21zR2V0Q29sb3JTcGFjZShk
aXNwbGF5UHJvZmlsZSkgPT0gY21zU2lnUmdiRGF0YSkKLSAgICAgICAgICAgICAgICAgICAgbV9p
Y2NUcmFuc2Zvcm0gPSBjbXNDcmVhdGVUcmFuc2Zvcm0obV9pY2NQcm9maWxlLCBUWVBFX0JHUkFf
OCwgZGlzcGxheVByb2ZpbGUsIFRZUEVfQkdSQV84LCBJTlRFTlRfUkVMQVRJVkVfQ09MT1JJTUVU
UklDLCAwKTsKKyAgICAgICAgICAgICAgICBpZiAoY21zR2V0Q29sb3JTcGFjZShpY2NQcm9maWxl
LmdldCgpKSA9PSBjbXNTaWdSZ2JEYXRhICYmIGNtc0dldENvbG9yU3BhY2UoZGlzcGxheVByb2Zp
bGUpID09IGNtc1NpZ1JnYkRhdGEpCisgICAgICAgICAgICAgICAgICAgIG1faWNjVHJhbnNmb3Jt
ID0gTENNU1RyYW5zZm9ybVB0cihjbXNDcmVhdGVUcmFuc2Zvcm0oaWNjUHJvZmlsZS5nZXQoKSwg
VFlQRV9CR1JBXzgsIGRpc3BsYXlQcm9maWxlLCBUWVBFX0JHUkFfOCwgSU5URU5UX1JFTEFUSVZF
X0NPTE9SSU1FVFJJQywgMCkpOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQpAQCAt
NTU3LDcgKzU0Niw3IEBAIHZvaWQgUE5HSW1hZ2VEZWNvZGVyOjpyb3dBdmFpbGFibGUodW5zaWdu
ZWQgY2hhciogcm93QnVmZmVyLCB1bnNpZ25lZCByb3dJbmRleCwKIAogI2lmIFVTRShMQ01TKQog
ICAgIGlmIChtX2ljY1RyYW5zZm9ybSkKLSAgICAgICAgY21zRG9UcmFuc2Zvcm0obV9pY2NUcmFu
c2Zvcm0sIGRlc3RSb3csIGRlc3RSb3csIHdpZHRoKTsKKyAgICAgICAgY21zRG9UcmFuc2Zvcm0o
bV9pY2NUcmFuc2Zvcm0uZ2V0KCksIGRlc3RSb3csIGRlc3RSb3csIHdpZHRoKTsKICNlbmRpZgog
CiAgICAgaWYgKG5vblRyaXZpYWxBbHBoYU1hc2sgJiYgIWJ1ZmZlci5oYXNBbHBoYSgpKQpAQCAt
ODY3LDcgKzg1Niw3IEBAIHZvaWQgUE5HSW1hZ2VEZWNvZGVyOjpmcmFtZUNvbXBsZXRlKCkKICAg
ICAgICAgICAgIH0KICNpZiBVU0UoTENNUykKICAgICAgICAgICAgIGlmIChtX2ljY1RyYW5zZm9y
bSkKLSAgICAgICAgICAgICAgICBjbXNEb1RyYW5zZm9ybShtX2ljY1RyYW5zZm9ybSwgZGVzdFJv
dywgZGVzdFJvdywgcmVjdC5tYXhYKCkpOworICAgICAgICAgICAgICAgIGNtc0RvVHJhbnNmb3Jt
KG1faWNjVHJhbnNmb3JtLmdldCgpLCBkZXN0Um93LCBkZXN0Um93LCByZWN0Lm1heFgoKSk7CiAj
ZW5kaWYKICAgICAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmgKaW5kZXggNmMyN2VmOTMy
ZGUyYTg0NTE2NWNlNWJhNzUyYWE0MjQ3NGU0YTkxZC4uNTBkNWQ3MWIyMzViNDZmNDZhMTJkMDUy
MjMzMzNmZjZiMDEzNzUwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZy9QTkdJbWFnZURlY29kZXIuaApAQCAtMzEsOCArMzEs
NyBAQAogI2VuZGlmCiAKICNpZiBVU0UoTENNUykKLXR5cGVkZWYgdm9pZCogY21zSFBST0ZJTEU7
Ci10eXBlZGVmIHZvaWQqIGNtc0hUUkFOU0ZPUk07CisjaW5jbHVkZSAiTENNU1VuaXF1ZVB0ci5o
IgogI2VuZGlmCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTEzOSw4ICsxMzgsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHBuZ19ieXRlIG1fZGF0YXRSTlNbMTIgKyAyNTZdOwog
I2VuZGlmCiAjaWYgVVNFKExDTVMpCi0gICAgICAgIGNtc0hQUk9GSUxFIG1faWNjUHJvZmlsZSB7
IG51bGxwdHIgfTsKLSAgICAgICAgY21zSFRSQU5TRk9STSBtX2ljY1RyYW5zZm9ybSB7IG51bGxw
dHIgfTsKKyAgICBMQ01TVHJhbnNmb3JtUHRyIG1faWNjVHJhbnNmb3JtOwogI2VuZGlmCiAKICAg
ICB9Owo=
</data>
<flag name="commit-queue"
          id="473403"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>