<?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>128254</bug_id>
          
          <creation_ts>2014-02-05 09:41:20 -0800</creation_ts>
          <short_desc>CTTE: ImageLoader is always owned by an Element.</short_desc>
          <delta_ts>2014-02-05 10:20:38 -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>Images</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>976773</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-05 09:41:20 -0800</bug_when>
    <thetext>CTTE: ImageLoader is always owned by an Element.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976774</commentid>
    <comment_count>1</comment_count>
      <attachid>223245</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-05 09:41:44 -0800</bug_when>
    <thetext>Created attachment 223245
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976797</commentid>
    <comment_count>2</comment_count>
      <attachid>223245</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-05 10:20:36 -0800</bug_when>
    <thetext>Comment on attachment 223245
Patch

Clearing flags on attachment: 223245

Committed r163457: &lt;http://trac.webkit.org/changeset/163457&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976798</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-05 10:20:38 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>223245</attachid>
            <date>2014-02-05 09:41:44 -0800</date>
            <delta_ts>2014-02-05 10:20:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-128254.diff</filename>
            <type>text/plain</type>
            <size>20564</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyMGQ3MmVmLi4wN2ExYjIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTYg
QEAKKzIwMTQtMDItMDUgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAg
ICAgIENUVEU6IEltYWdlTG9hZGVyIGlzIGFsd2F5cyBvd25lZCBieSBhbiBFbGVtZW50LgorICAg
ICAgICA8aHR0cHM6Ly93ZWJraXQub3JnL2IvMTI4MjU0PgorCisgICAgICAgIC0gQ29kaWZ5IHRo
aXMgYnkgbWFraW5nIHRoZSBjb25zdHJ1Y3RvciB0YWtlIEVsZW1lbnQmIG9yIGJldHRlci4KKyAg
ICAgICAgLSBNYWtlIGVsZW1lbnQoKSByZXR1cm4gRWxlbWVudCYuCisgICAgICAgIC0gTWFya2Vk
IEhUTUxJbWFnZUxvYWRlciBhbmQgU1ZHSW1hZ2VMb2FkZXIgZmluYWwuCisgICAgICAgIC0gTWFk
ZSB0aGUgSW1hZ2VMb2FkZXIgY29uc3RydWN0b3IgcHJvdGVjdGVkLgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHRtbC9IVE1MRW1iZWRFbGVtZW50
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbWJlZEVsZW1lbnQ6OnBhcnNlQXR0cmlidXRl
KToKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEltYWdlRWxlbWVudDo6SFRNTEltYWdlRWxlbWVudCk6CisgICAgICAgICogaHRtbC9I
VE1MSW1hZ2VMb2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlTG9hZGVyOjpI
VE1MSW1hZ2VMb2FkZXIpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEltYWdlTG9hZGVyOjpkaXNw
YXRjaExvYWRFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW1hZ2VMb2FkZXI6OnNvdXJj
ZVVSSSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW1hZ2VMb2FkZXI6Om5vdGlmeUZpbmlzaGVk
KToKKyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUxvYWRlci5oOgorICAgICAgICAqIGh0bWwvSFRN
TElucHV0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MSW5wdXRFbGVtZW50Ojpp
bWFnZUxvYWRlcik6CisgICAgICAgICogaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MT2JqZWN0RWxlbWVudDo6cGFyc2VBdHRyaWJ1dGUpOgorICAgICAg
ICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzdGFydExvYWRpbmdJbWFnZSk6CisgICAgICAgICogaHRt
bC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxWaWRlb0VsZW1l
bnQ6OmRpZEF0dGFjaFJlbmRlcmVycyk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVmlkZW9FbGVt
ZW50OjpwYXJzZUF0dHJpYnV0ZSk6CisgICAgICAgICogbG9hZGVyL0ltYWdlTG9hZGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9hZGVyOjpJbWFnZUxvYWRlcik6CisgICAgICAgIChX
ZWJDb3JlOjpJbWFnZUxvYWRlcjo6fkltYWdlTG9hZGVyKToKKyAgICAgICAgKFdlYkNvcmU6Oklt
YWdlTG9hZGVyOjp1cGRhdGVGcm9tRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUxv
YWRlcjo6bm90aWZ5RmluaXNoZWQpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VMb2FkZXI6OnJl
bmRlckltYWdlUmVzb3VyY2UpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VMb2FkZXI6OnVwZGF0
ZWRIYXNQZW5kaW5nRXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VMb2FkZXI6OnRpbWVy
RmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VMb2FkZXI6OmRpc3BhdGNoUGVuZGluZ0Jl
Zm9yZUxvYWRFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUxvYWRlcjo6ZGlzcGF0Y2hQ
ZW5kaW5nTG9hZEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlTG9hZGVyOjpkaXNwYXRj
aFBlbmRpbmdFcnJvckV2ZW50KToKKyAgICAgICAgKiBsb2FkZXIvSW1hZ2VMb2FkZXIuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkltYWdlTG9hZGVyOjplbGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZH
SW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ltYWdlRWxlbWVudDo6U1ZH
SW1hZ2VFbGVtZW50KToKKyAgICAgICAgKiBzdmcvU1ZHSW1hZ2VMb2FkZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6U1ZHSW1hZ2VMb2FkZXI6OlNWR0ltYWdlTG9hZGVyKToKKyAgICAgICAgKFdl
YkNvcmU6OlNWR0ltYWdlTG9hZGVyOjp+U1ZHSW1hZ2VMb2FkZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6U1ZHSW1hZ2VMb2FkZXI6OmRpc3BhdGNoTG9hZEV2ZW50KToKKyAgICAgICAgKFdlYkNvcmU6
OlNWR0ltYWdlTG9hZGVyOjpzb3VyY2VVUkkpOgorICAgICAgICAqIHN2Zy9TVkdJbWFnZUxvYWRl
ci5oOgorCiAyMDE0LTAyLTA0ICBBbmRyZWFzIEtsaW5nICA8YWtsaW5nQGFwcGxlLmNvbT4KIAog
ICAgICAgICBSZW1vdmUgbGVmdG92ZXIgc2VhbWxlc3MgaWZyYW1lIGxvZ2ljIGZyb20gY29udGFp
bmVyRm9yUmVwYWludCgpLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRW1i
ZWRFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHAK
aW5kZXggNDdjOWRhOS4uMDk2ZjZmYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEVtYmVkRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRW1iZWRF
bGVtZW50LmNwcApAQCAtMTA4LDcgKzEwOCw3IEBAIHZvaWQgSFRNTEVtYmVkRWxlbWVudDo6cGFy
c2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgbmFtZSwgY29uc3QgQXRvbWljU3RyCiAg
ICAgICAgIGRvY3VtZW50KCkudXBkYXRlU3R5bGVJZk5lZWRlZCgpOwogICAgICAgICBpZiAocmVu
ZGVyZXIoKSAmJiBpc0ltYWdlVHlwZSgpKSB7CiAgICAgICAgICAgICBpZiAoIW1faW1hZ2VMb2Fk
ZXIpCi0gICAgICAgICAgICAgICAgbV9pbWFnZUxvYWRlciA9IGFkb3B0UHRyKG5ldyBIVE1MSW1h
Z2VMb2FkZXIodGhpcykpOworICAgICAgICAgICAgICAgIG1faW1hZ2VMb2FkZXIgPSBhZG9wdFB0
cihuZXcgSFRNTEltYWdlTG9hZGVyKCp0aGlzKSk7CiAgICAgICAgICAgICBtX2ltYWdlTG9hZGVy
LT51cGRhdGVGcm9tRWxlbWVudElnbm9yaW5nUHJldmlvdXNFcnJvcigpOwogICAgICAgICB9CiAg
ICAgfSBlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1l
bnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmNwcAppbmRleCA1
MWY4NmU1Li45ODc4Yzc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFn
ZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5j
cHAKQEAgLTQyLDcgKzQyLDcgQEAgdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIAogSFRNTElt
YWdlRWxlbWVudDo6SFRNTEltYWdlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1l
LCBEb2N1bWVudCYgZG9jdW1lbnQsIEhUTUxGb3JtRWxlbWVudCogZm9ybSkKICAgICA6IEhUTUxF
bGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KQotICAgICwgbV9pbWFnZUxvYWRlcih0aGlzKQorICAg
ICwgbV9pbWFnZUxvYWRlcigqdGhpcykKICAgICAsIG1fZm9ybShmb3JtKQogICAgICwgbV9jb21w
b3NpdGVPcGVyYXRvcihDb21wb3NpdGVTb3VyY2VPdmVyKQogICAgICwgbV9pbWFnZURldmljZVBp
eGVsUmF0aW8oMS4wZikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdl
TG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlTG9hZGVyLmNwcAppbmRl
eCA0NzQzZGNiLi41NDNjMmY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJ
bWFnZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VMb2FkZXIu
Y3BwCkBAIC0zNyw4ICszNyw4IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotSFRNTEltYWdl
TG9hZGVyOjpIVE1MSW1hZ2VMb2FkZXIoRWxlbWVudCogbm9kZSkKLSAgICA6IEltYWdlTG9hZGVy
KG5vZGUpCitIVE1MSW1hZ2VMb2FkZXI6OkhUTUxJbWFnZUxvYWRlcihFbGVtZW50JiBlbGVtZW50
KQorICAgIDogSW1hZ2VMb2FkZXIoZWxlbWVudCkKIHsKIH0KIApAQCAtNTUsMTMgKzU1LDEzIEBA
IHZvaWQgSFRNTEltYWdlTG9hZGVyOjpkaXNwYXRjaExvYWRFdmVudCgpCiAgICAgYm9vbCBlcnJv
ck9jY3VycmVkID0gaW1hZ2UoKS0+ZXJyb3JPY2N1cnJlZCgpOwogICAgIGlmICghZXJyb3JPY2N1
cnJlZCAmJiBpbWFnZSgpLT5yZXNwb25zZSgpLmh0dHBTdGF0dXNDb2RlKCkgPj0gNDAwKQogICAg
ICAgICBlcnJvck9jY3VycmVkID0gaXNIVE1MT2JqZWN0RWxlbWVudChlbGVtZW50KCkpOyAvLyBB
biA8b2JqZWN0PiBjb25zaWRlcnMgYSA0MDQgdG8gYmUgYW4gZXJyb3IgYW5kIHNob3VsZCBmaXJl
IG9uZXJyb3IuCi0gICAgZWxlbWVudCgpLT5kaXNwYXRjaEV2ZW50KEV2ZW50OjpjcmVhdGUoZXJy
b3JPY2N1cnJlZCA/IGV2ZW50TmFtZXMoKS5lcnJvckV2ZW50IDogZXZlbnROYW1lcygpLmxvYWRF
dmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgZWxlbWVudCgpLmRpc3BhdGNoRXZlbnQoRXZlbnQ6
OmNyZWF0ZShlcnJvck9jY3VycmVkID8gZXZlbnROYW1lcygpLmVycm9yRXZlbnQgOiBldmVudE5h
bWVzKCkubG9hZEV2ZW50LCBmYWxzZSwgZmFsc2UpKTsKIH0KIAogU3RyaW5nIEhUTUxJbWFnZUxv
YWRlcjo6c291cmNlVVJJKGNvbnN0IEF0b21pY1N0cmluZyYgYXR0cikgY29uc3QKIHsKICNpZiBF
TkFCTEUoREFTSEJPQVJEX1NVUFBPUlQpCi0gICAgU2V0dGluZ3MqIHNldHRpbmdzID0gZWxlbWVu
dCgpLT5kb2N1bWVudCgpLnNldHRpbmdzKCk7CisgICAgU2V0dGluZ3MqIHNldHRpbmdzID0gZWxl
bWVudCgpLmRvY3VtZW50KCkuc2V0dGluZ3MoKTsKICAgICBpZiAoc2V0dGluZ3MgJiYgc2V0dGlu
Z3MtPnVzZXNEYXNoYm9hcmRCYWNrd2FyZENvbXBhdGliaWxpdHlNb2RlKCkgJiYgYXR0ci5sZW5n
dGgoKSA+IDcgJiYgYXR0ci5zdGFydHNXaXRoKCJ1cmwoXCIiKSAmJiBhdHRyLmVuZHNXaXRoKCJc
IikiKSkKICAgICAgICAgcmV0dXJuIGF0dHIuc3RyaW5nKCkuc3Vic3RyaW5nKDUsIGF0dHIubGVu
Z3RoKCkgLSA3KTsKICNlbmRpZgpAQCAtNzMsMjAgKzczLDIwIEBAIHZvaWQgSFRNTEltYWdlTG9h
ZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSopCiB7CiAgICAgQ2FjaGVkSW1hZ2Uq
IGNhY2hlZEltYWdlID0gaW1hZ2UoKTsKIAotICAgIFJlZlB0cjxFbGVtZW50PiBlbGVtZW50ID0g
dGhpcy0+ZWxlbWVudCgpOworICAgIFJlZjxFbGVtZW50PiBwcm90ZWN0KGVsZW1lbnQoKSk7CiAg
ICAgSW1hZ2VMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKGNhY2hlZEltYWdlKTsKIAogICAgIGJvb2wg
bG9hZEVycm9yID0gY2FjaGVkSW1hZ2UtPmVycm9yT2NjdXJyZWQoKSB8fCBjYWNoZWRJbWFnZS0+
cmVzcG9uc2UoKS5odHRwU3RhdHVzQ29kZSgpID49IDQwMDsKICAgICBpZiAoIWxvYWRFcnJvcikg
ewotICAgICAgICBpZiAoIWVsZW1lbnQtPmluRG9jdW1lbnQoKSkgeworICAgICAgICBpZiAoIWVs
ZW1lbnQoKS5pbkRvY3VtZW50KCkpIHsKICAgICAgICAgICAgIEpTQzo6Vk0qIHZtID0gSlNET01X
aW5kb3dCYXNlOjpjb21tb25WTSgpOwogICAgICAgICAgICAgSlNDOjpKU0xvY2tIb2xkZXIgbG9j
ayh2bSk7CiAgICAgICAgICAgICB2bS0+aGVhcC5yZXBvcnRFeHRyYU1lbW9yeUNvc3QoY2FjaGVk
SW1hZ2UtPmVuY29kZWRTaXplKCkpOwogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKGxvYWRF
cnJvciAmJiBpc0hUTUxPYmplY3RFbGVtZW50KGVsZW1lbnQuZ2V0KCkpKQotICAgICAgICB0b0hU
TUxPYmplY3RFbGVtZW50KGVsZW1lbnQuZ2V0KCkpLT5yZW5kZXJGYWxsYmFja0NvbnRlbnQoKTsK
KyAgICBpZiAobG9hZEVycm9yICYmIGlzSFRNTE9iamVjdEVsZW1lbnQoZWxlbWVudCgpKSkKKyAg
ICAgICAgdG9IVE1MT2JqZWN0RWxlbWVudChlbGVtZW50KCkpLnJlbmRlckZhbGxiYWNrQ29udGVu
dCgpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUxv
YWRlci5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW1hZ2VMb2FkZXIuaAppbmRleCAxNGVh
MmJjLi45ZGYyYTZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbWFnZUxv
YWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEltYWdlTG9hZGVyLmgKQEAgLTI3
LDkgKzI3LDkgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBIVE1MSW1hZ2VMb2Fk
ZXIgOiBwdWJsaWMgSW1hZ2VMb2FkZXIgeworY2xhc3MgSFRNTEltYWdlTG9hZGVyIGZpbmFsIDog
cHVibGljIEltYWdlTG9hZGVyIHsKIHB1YmxpYzoKLSAgICBIVE1MSW1hZ2VMb2FkZXIoRWxlbWVu
dCopOworICAgIGV4cGxpY2l0IEhUTUxJbWFnZUxvYWRlcihFbGVtZW50Jik7CiAgICAgdmlydHVh
bCB+SFRNTEltYWdlTG9hZGVyKCk7CiAKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hMb2FkRXZl
bnQoKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmlu
ZGV4IDk5MjE5ZjkuLjBlYzM3ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmNwcApAQCAtMTQyLDcgKzE0Miw3IEBAIFBhc3NSZWZQdHI8SFRNTElucHV0RWxlbWVudD4g
SFRNTElucHV0RWxlbWVudDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hCiBIVE1M
SW1hZ2VMb2FkZXIqIEhUTUxJbnB1dEVsZW1lbnQ6OmltYWdlTG9hZGVyKCkKIHsKICAgICBpZiAo
IW1faW1hZ2VMb2FkZXIpCi0gICAgICAgIG1faW1hZ2VMb2FkZXIgPSBhZG9wdFB0cihuZXcgSFRN
TEltYWdlTG9hZGVyKHRoaXMpKTsKKyAgICAgICAgbV9pbWFnZUxvYWRlciA9IGFkb3B0UHRyKG5l
dyBIVE1MSW1hZ2VMb2FkZXIoKnRoaXMpKTsKICAgICByZXR1cm4gbV9pbWFnZUxvYWRlci5nZXQo
KTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmNwcAppbmRleCA4
NDI4NmQyLi4wYjQyZDUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmpl
Y3RFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50
LmNwcApAQCAtMTIwLDcgKzEyMCw3IEBAIHZvaWQgSFRNTE9iamVjdEVsZW1lbnQ6OnBhcnNlQXR0
cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIG5hbWUsIGNvbnN0IEF0b21pY1N0CiAgICAgICAg
ICAgICBzZXROZWVkc1dpZGdldFVwZGF0ZSh0cnVlKTsKICAgICAgICAgICAgIGlmIChpc0ltYWdl
VHlwZSgpKSB7CiAgICAgICAgICAgICAgICAgaWYgKCFtX2ltYWdlTG9hZGVyKQotICAgICAgICAg
ICAgICAgICAgICBtX2ltYWdlTG9hZGVyID0gYWRvcHRQdHIobmV3IEhUTUxJbWFnZUxvYWRlcih0
aGlzKSk7CisgICAgICAgICAgICAgICAgICAgIG1faW1hZ2VMb2FkZXIgPSBhZG9wdFB0cihuZXcg
SFRNTEltYWdlTG9hZGVyKCp0aGlzKSk7CiAgICAgICAgICAgICAgICAgbV9pbWFnZUxvYWRlci0+
dXBkYXRlRnJvbUVsZW1lbnRJZ25vcmluZ1ByZXZpb3VzRXJyb3IoKTsKICAgICAgICAgICAgIH0K
ICAgICAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1h
Z2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVu
dC5jcHAKaW5kZXggMThlZjIwNi4uMWRiMTIxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCkBAIC0zMjksNyArMzI5LDcgQEAgdm9pZCBIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50Ojp1cGRhdGVXaWRnZXRDYWxsYmFjayhOb2RlJiBub2RlLCB1bnNp
Z25lZCkKIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c3RhcnRMb2FkaW5nSW1hZ2UoKQog
ewogICAgIGlmICghbV9pbWFnZUxvYWRlcikKLSAgICAgICAgbV9pbWFnZUxvYWRlciA9IGFkb3B0
UHRyKG5ldyBIVE1MSW1hZ2VMb2FkZXIodGhpcykpOworICAgICAgICBtX2ltYWdlTG9hZGVyID0g
YWRvcHRQdHIobmV3IEhUTUxJbWFnZUxvYWRlcigqdGhpcykpOwogICAgIG1faW1hZ2VMb2FkZXIt
PnVwZGF0ZUZyb21FbGVtZW50KCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0Vs
ZW1lbnQuY3BwCmluZGV4IDY5MjM3ZTQuLmJiOWZlMzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MVmlkZW9FbGVtZW50LmNwcApAQCAtODYsNyArODYsNyBAQCB2b2lkIEhUTUxWaWRlb0VsZW1l
bnQ6OmRpZEF0dGFjaFJlbmRlcmVycygpCiAgICAgICAgIHVwZGF0ZURpc3BsYXlTdGF0ZSgpOwog
ICAgICAgICBpZiAoc2hvdWxkRGlzcGxheVBvc3RlckltYWdlKCkpIHsKICAgICAgICAgICAgIGlm
ICghbV9pbWFnZUxvYWRlcikKLSAgICAgICAgICAgICAgICBtX2ltYWdlTG9hZGVyID0gYWRvcHRQ
dHIobmV3IEhUTUxJbWFnZUxvYWRlcih0aGlzKSk7CisgICAgICAgICAgICAgICAgbV9pbWFnZUxv
YWRlciA9IGFkb3B0UHRyKG5ldyBIVE1MSW1hZ2VMb2FkZXIoKnRoaXMpKTsKICAgICAgICAgICAg
IG1faW1hZ2VMb2FkZXItPnVwZGF0ZUZyb21FbGVtZW50KCk7CiAgICAgICAgICAgICBpZiAocmVu
ZGVyZXIoKSkKICAgICAgICAgICAgICAgICB0b1JlbmRlckltYWdlKHJlbmRlcmVyKCkpLT5pbWFn
ZVJlc291cmNlKCkuc2V0Q2FjaGVkSW1hZ2UobV9pbWFnZUxvYWRlci0+aW1hZ2UoKSk7CkBAIC0x
MjUsNyArMTI1LDcgQEAgdm9pZCBIVE1MVmlkZW9FbGVtZW50OjpwYXJzZUF0dHJpYnV0ZShjb25z
dCBRdWFsaWZpZWROYW1lJiBuYW1lLCBjb25zdCBBdG9taWNTdHIKICNlbmRpZgogICAgICAgICBp
ZiAoc2hvdWxkRGlzcGxheVBvc3RlckltYWdlKCkpIHsKICAgICAgICAgICAgIGlmICghbV9pbWFn
ZUxvYWRlcikKLSAgICAgICAgICAgICAgICBtX2ltYWdlTG9hZGVyID0gYWRvcHRQdHIobmV3IEhU
TUxJbWFnZUxvYWRlcih0aGlzKSk7CisgICAgICAgICAgICAgICAgbV9pbWFnZUxvYWRlciA9IGFk
b3B0UHRyKG5ldyBIVE1MSW1hZ2VMb2FkZXIoKnRoaXMpKTsKICAgICAgICAgICAgIG1faW1hZ2VM
b2FkZXItPnVwZGF0ZUZyb21FbGVtZW50SWdub3JpbmdQcmV2aW91c0Vycm9yKCk7CiAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICBpZiAocmVuZGVyZXIoKSkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
SW1hZ2VMb2FkZXIuY3BwCmluZGV4IDEzYzMyZmYuLmJmOGE2MzcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL0ltYWdlTG9hZGVyLmNwcApAQCAtNTUsOCArNTUsNyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBW
YWx1ZUNoZWNrPFdlYkNvcmU6OkltYWdlTG9hZGVyKj4gewogICAgIHsKICAgICAgICAgaWYgKCFw
KQogICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICBBU1NFUlQocC0+ZWxlbWVudCgpKTsKLSAg
ICAgICAgVmFsdWVDaGVjazxXZWJDb3JlOjpFbGVtZW50Kj46OmNoZWNrQ29uc2lzdGVuY3kocC0+
ZWxlbWVudCgpKTsKKyAgICAgICAgVmFsdWVDaGVjazxXZWJDb3JlOjpFbGVtZW50Kj46OmNoZWNr
Q29uc2lzdGVuY3koJnAtPmVsZW1lbnQoKSk7CiAgICAgfQogfTsKIApAQCAtODksNyArODgsNyBA
QCBzdGF0aWMgaW5saW5lIGJvb2wgcGFnZUlzQmVpbmdEaXNtaXNzZWQoRG9jdW1lbnQmIGRvY3Vt
ZW50KQogICAgIHJldHVybiBmcmFtZSAmJiBmcmFtZS0+bG9hZGVyKCkucGFnZURpc21pc3NhbEV2
ZW50QmVpbmdEaXNwYXRjaGVkKCkgIT0gRnJhbWVMb2FkZXI6Ok5vRGlzbWlzc2FsOwogfQogCi1J
bWFnZUxvYWRlcjo6SW1hZ2VMb2FkZXIoRWxlbWVudCogZWxlbWVudCkKK0ltYWdlTG9hZGVyOjpJ
bWFnZUxvYWRlcihFbGVtZW50JiBlbGVtZW50KQogICAgIDogbV9lbGVtZW50KGVsZW1lbnQpCiAg
ICAgLCBtX2ltYWdlKDApCiAgICAgLCBtX2RlcmVmRWxlbWVudFRpbWVyKHRoaXMsICZJbWFnZUxv
YWRlcjo6dGltZXJGaXJlZCkKQEAgLTEyMiw3ICsxMjEsNyBAQCBJbWFnZUxvYWRlcjo6fkltYWdl
TG9hZGVyKCkKICAgICAvLyBJZiB0aGUgSW1hZ2VMb2FkZXIgaXMgYmVpbmcgZGVzdHJveWVkIGJ1
dCBpdCBpcyBzdGlsbCBwcm90ZWN0aW5nIGl0cyBpbWFnZS1sb2FkaW5nIEVsZW1lbnQsCiAgICAg
Ly8gcmVtb3ZlIHRoYXQgcHJvdGVjdGlvbiBoZXJlLgogICAgIGlmIChtX2VsZW1lbnRJc1Byb3Rl
Y3RlZCkKLSAgICAgICAgbV9lbGVtZW50LT5kZXJlZigpOworICAgICAgICBlbGVtZW50KCkuZGVy
ZWYoKTsKIH0KIAogdm9pZCBJbWFnZUxvYWRlcjo6c2V0SW1hZ2UoQ2FjaGVkSW1hZ2UqIG5ld0lt
YWdlKQpAQCAtMTY3LDExICsxNjYsMTEgQEAgdm9pZCBJbWFnZUxvYWRlcjo6dXBkYXRlRnJvbUVs
ZW1lbnQoKQogewogICAgIC8vIElmIHdlJ3JlIG5vdCBtYWtpbmcgcmVuZGVyZXJzIGZvciB0aGUg
cGFnZSwgdGhlbiBkb24ndCBsb2FkIGltYWdlcy4gIFdlIGRvbid0IHdhbnQgdG8gc2xvdwogICAg
IC8vIGRvd24gdGhlIHJhdyBIVE1MIHBhcnNpbmcgY2FzZSBieSBsb2FkaW5nIGltYWdlcyB3ZSBk
b24ndCBpbnRlbmQgdG8gZGlzcGxheS4KLSAgICBEb2N1bWVudCYgZG9jdW1lbnQgPSBtX2VsZW1l
bnQtPmRvY3VtZW50KCk7CisgICAgRG9jdW1lbnQmIGRvY3VtZW50ID0gZWxlbWVudCgpLmRvY3Vt
ZW50KCk7CiAgICAgaWYgKCFkb2N1bWVudC5oYXNMaXZpbmdSZW5kZXJUcmVlKCkpCiAgICAgICAg
IHJldHVybjsKIAotICAgIEF0b21pY1N0cmluZyBhdHRyID0gbV9lbGVtZW50LT5pbWFnZVNvdXJj
ZVVSTCgpOworICAgIEF0b21pY1N0cmluZyBhdHRyID0gZWxlbWVudCgpLmltYWdlU291cmNlVVJM
KCk7CiAKICAgICBpZiAoYXR0ciA9PSBtX2ZhaWxlZExvYWRVUkwpCiAgICAgICAgIHJldHVybjsK
QEAgLTE4MSw5ICsxODAsOSBAQCB2b2lkIEltYWdlTG9hZGVyOjp1cGRhdGVGcm9tRWxlbWVudCgp
CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkSW1hZ2U+IG5ld0ltYWdlID0gMDsKICAg
ICBpZiAoIWF0dHIuaXNOdWxsKCkgJiYgIXN0cmlwTGVhZGluZ0FuZFRyYWlsaW5nSFRNTFNwYWNl
cyhhdHRyKS5pc0VtcHR5KCkpIHsKICAgICAgICAgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IHJlcXVl
c3QoUmVzb3VyY2VSZXF1ZXN0KGRvY3VtZW50LmNvbXBsZXRlVVJMKHNvdXJjZVVSSShhdHRyKSkp
KTsKLSAgICAgICAgcmVxdWVzdC5zZXRJbml0aWF0b3IoZWxlbWVudCgpKTsKKyAgICAgICAgcmVx
dWVzdC5zZXRJbml0aWF0b3IoJmVsZW1lbnQoKSk7CiAKLSAgICAgICAgU3RyaW5nIGNyb3NzT3Jp
Z2luTW9kZSA9IG1fZWxlbWVudC0+ZmFzdEdldEF0dHJpYnV0ZShIVE1MTmFtZXM6OmNyb3Nzb3Jp
Z2luQXR0cik7CisgICAgICAgIFN0cmluZyBjcm9zc09yaWdpbk1vZGUgPSBlbGVtZW50KCkuZmFz
dEdldEF0dHJpYnV0ZShIVE1MTmFtZXM6OmNyb3Nzb3JpZ2luQXR0cik7CiAgICAgICAgIGlmICgh
Y3Jvc3NPcmlnaW5Nb2RlLmlzTnVsbCgpKSB7CiAgICAgICAgICAgICBTdG9yZWRDcmVkZW50aWFs
cyBhbGxvd0NyZWRlbnRpYWxzID0gZXF1YWxJZ25vcmluZ0Nhc2UoY3Jvc3NPcmlnaW5Nb2RlLCAi
dXNlLWNyZWRlbnRpYWxzIikgPyBBbGxvd1N0b3JlZENyZWRlbnRpYWxzIDogRG9Ob3RBbGxvd1N0
b3JlZENyZWRlbnRpYWxzOwogICAgICAgICAgICAgdXBkYXRlUmVxdWVzdEZvckFjY2Vzc0NvbnRy
b2wocmVxdWVzdC5tdXRhYmxlUmVzb3VyY2VSZXF1ZXN0KCksIGRvY3VtZW50LnNlY3VyaXR5T3Jp
Z2luKCksIGFsbG93Q3JlZGVudGlhbHMpOwpAQCAtMjg2LDkgKzI4NSw5IEBAIHZvaWQgSW1hZ2VM
b2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291cmNlKiByZXNvdXJjZSkKICAgICBpZiAo
IW1faGFzUGVuZGluZ0xvYWRFdmVudCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKG1fZWxl
bWVudC0+ZmFzdEhhc0F0dHJpYnV0ZShIVE1MTmFtZXM6OmNyb3Nzb3JpZ2luQXR0cikKLSAgICAg
ICAgJiYgIW1fZWxlbWVudC0+ZG9jdW1lbnQoKS5zZWN1cml0eU9yaWdpbigpLT5jYW5SZXF1ZXN0
KGltYWdlKCktPnJlc3BvbnNlKCkudXJsKCkpCi0gICAgICAgICYmICFyZXNvdXJjZS0+cGFzc2Vz
QWNjZXNzQ29udHJvbENoZWNrKG1fZWxlbWVudC0+ZG9jdW1lbnQoKS5zZWN1cml0eU9yaWdpbigp
KSkgeworICAgIGlmIChlbGVtZW50KCkuZmFzdEhhc0F0dHJpYnV0ZShIVE1MTmFtZXM6OmNyb3Nz
b3JpZ2luQXR0cikKKyAgICAgICAgJiYgIWVsZW1lbnQoKS5kb2N1bWVudCgpLnNlY3VyaXR5T3Jp
Z2luKCktPmNhblJlcXVlc3QoaW1hZ2UoKS0+cmVzcG9uc2UoKS51cmwoKSkKKyAgICAgICAgJiYg
IXJlc291cmNlLT5wYXNzZXNBY2Nlc3NDb250cm9sQ2hlY2soZWxlbWVudCgpLmRvY3VtZW50KCku
c2VjdXJpdHlPcmlnaW4oKSkpIHsKIAogICAgICAgICBzZXRJbWFnZVdpdGhvdXRDb25zaWRlcmlu
Z1BlbmRpbmdMb2FkRXZlbnQoMCk7CiAKQEAgLTI5Niw3ICsyOTUsNyBAQCB2b2lkIEltYWdlTG9h
ZGVyOjpub3RpZnlGaW5pc2hlZChDYWNoZWRSZXNvdXJjZSogcmVzb3VyY2UpCiAgICAgICAgIGVy
cm9yRXZlbnRTZW5kZXIoKS5kaXNwYXRjaEV2ZW50U29vbih0aGlzKTsKIAogICAgICAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKFN0cmluZywgY29uc29sZU1lc3NhZ2UsIChBU0NJSUxpdGVyYWwoIkNy
b3NzLW9yaWdpbiBpbWFnZSBsb2FkIGRlbmllZCBieSBDcm9zcy1PcmlnaW4gUmVzb3VyY2UgU2hh
cmluZyBwb2xpY3kuIikpKTsKLSAgICAgICAgbV9lbGVtZW50LT5kb2N1bWVudCgpLmFkZENvbnNv
bGVNZXNzYWdlKFNlY3VyaXR5TWVzc2FnZVNvdXJjZSwgRXJyb3JNZXNzYWdlTGV2ZWwsIGNvbnNv
bGVNZXNzYWdlKTsKKyAgICAgICAgZWxlbWVudCgpLmRvY3VtZW50KCkuYWRkQ29uc29sZU1lc3Nh
Z2UoU2VjdXJpdHlNZXNzYWdlU291cmNlLCBFcnJvck1lc3NhZ2VMZXZlbCwgY29uc29sZU1lc3Nh
Z2UpOwogCiAgICAgICAgIEFTU0VSVCghbV9oYXNQZW5kaW5nTG9hZEV2ZW50KTsKIApAQCAtMzE5
LDcgKzMxOCw3IEBAIHZvaWQgSW1hZ2VMb2FkZXI6Om5vdGlmeUZpbmlzaGVkKENhY2hlZFJlc291
cmNlKiByZXNvdXJjZSkKIAogUmVuZGVySW1hZ2VSZXNvdXJjZSogSW1hZ2VMb2FkZXI6OnJlbmRl
ckltYWdlUmVzb3VyY2UoKQogewotICAgIGF1dG8gcmVuZGVyZXIgPSBtX2VsZW1lbnQtPnJlbmRl
cmVyKCk7CisgICAgYXV0byByZW5kZXJlciA9IGVsZW1lbnQoKS5yZW5kZXJlcigpOwogICAgIGlm
ICghcmVuZGVyZXIpCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC0zNzEsNyArMzcwLDcg
QEAgdm9pZCBJbWFnZUxvYWRlcjo6dXBkYXRlZEhhc1BlbmRpbmdFdmVudCgpCiAgICAgICAgIGlm
IChtX2RlcmVmRWxlbWVudFRpbWVyLmlzQWN0aXZlKCkpCiAgICAgICAgICAgICBtX2RlcmVmRWxl
bWVudFRpbWVyLnN0b3AoKTsKICAgICAgICAgZWxzZQotICAgICAgICAgICAgbV9lbGVtZW50LT5y
ZWYoKTsKKyAgICAgICAgICAgIGVsZW1lbnQoKS5yZWYoKTsKICAgICB9IGVsc2UgewogICAgICAg
ICBBU1NFUlQoIW1fZGVyZWZFbGVtZW50VGltZXIuaXNBY3RpdmUoKSk7CiAgICAgICAgIG1fZGVy
ZWZFbGVtZW50VGltZXIuc3RhcnRPbmVTaG90KDApOwpAQCAtMzgwLDcgKzM3OSw3IEBAIHZvaWQg
SW1hZ2VMb2FkZXI6OnVwZGF0ZWRIYXNQZW5kaW5nRXZlbnQoKQogCiB2b2lkIEltYWdlTG9hZGVy
Ojp0aW1lckZpcmVkKFRpbWVyPEltYWdlTG9hZGVyPiYpCiB7Ci0gICAgbV9lbGVtZW50LT5kZXJl
ZigpOworICAgIGVsZW1lbnQoKS5kZXJlZigpOwogfQogCiB2b2lkIEltYWdlTG9hZGVyOjpkaXNw
YXRjaFBlbmRpbmdFdmVudChJbWFnZUV2ZW50U2VuZGVyKiBldmVudFNlbmRlcikKQEAgLTQwMSwx
MCArNDAwLDEwIEBAIHZvaWQgSW1hZ2VMb2FkZXI6OmRpc3BhdGNoUGVuZGluZ0JlZm9yZUxvYWRF
dmVudCgpCiAgICAgICAgIHJldHVybjsKICAgICBpZiAoIW1faW1hZ2UpCiAgICAgICAgIHJldHVy
bjsKLSAgICBpZiAoIW1fZWxlbWVudC0+ZG9jdW1lbnQoKS5oYXNMaXZpbmdSZW5kZXJUcmVlKCkp
CisgICAgaWYgKCFlbGVtZW50KCkuZG9jdW1lbnQoKS5oYXNMaXZpbmdSZW5kZXJUcmVlKCkpCiAg
ICAgICAgIHJldHVybjsKICAgICBtX2hhc1BlbmRpbmdCZWZvcmVMb2FkRXZlbnQgPSBmYWxzZTsK
LSAgICBpZiAobV9lbGVtZW50LT5kaXNwYXRjaEJlZm9yZUxvYWRFdmVudChtX2ltYWdlLT51cmwo
KSkpIHsKKyAgICBpZiAoZWxlbWVudCgpLmRpc3BhdGNoQmVmb3JlTG9hZEV2ZW50KG1faW1hZ2Ut
PnVybCgpKSkgewogICAgICAgICB1cGRhdGVSZW5kZXJlcigpOwogICAgICAgICByZXR1cm47CiAg
ICAgfQpAQCAtNDE2LDggKzQxNSw4IEBAIHZvaWQgSW1hZ2VMb2FkZXI6OmRpc3BhdGNoUGVuZGlu
Z0JlZm9yZUxvYWRFdmVudCgpCiAgICAgbG9hZEV2ZW50U2VuZGVyKCkuY2FuY2VsRXZlbnQodGhp
cyk7CiAgICAgbV9oYXNQZW5kaW5nTG9hZEV2ZW50ID0gZmFsc2U7CiAgICAgCi0gICAgaWYgKGlz
SFRNTE9iamVjdEVsZW1lbnQobV9lbGVtZW50KSkKLSAgICAgICAgdG9IVE1MT2JqZWN0RWxlbWVu
dChtX2VsZW1lbnQpLT5yZW5kZXJGYWxsYmFja0NvbnRlbnQoKTsKKyAgICBpZiAoaXNIVE1MT2Jq
ZWN0RWxlbWVudChlbGVtZW50KCkpKQorICAgICAgICB0b0hUTUxPYmplY3RFbGVtZW50KGVsZW1l
bnQoKSkucmVuZGVyRmFsbGJhY2tDb250ZW50KCk7CiAKICAgICAvLyBPbmx5IGNvbnNpZGVyIHVw
ZGF0aW5nIHRoZSBwcm90ZWN0aW9uIHJlZi1jb3VudCBvZiB0aGUgRWxlbWVudCBpbW1lZGlhdGVs
eSBiZWZvcmUgcmV0dXJuaW5nCiAgICAgLy8gZnJvbSB0aGlzIGZ1bmN0aW9uIGFzIGRvaW5nIHNv
IG1pZ2h0IHJlc3VsdCBpbiB0aGUgZGVzdHJ1Y3Rpb24gb2YgdGhpcyBJbWFnZUxvYWRlci4KQEAg
LTQzMSw3ICs0MzAsNyBAQCB2b2lkIEltYWdlTG9hZGVyOjpkaXNwYXRjaFBlbmRpbmdMb2FkRXZl
bnQoKQogICAgIGlmICghbV9pbWFnZSkKICAgICAgICAgcmV0dXJuOwogICAgIG1faGFzUGVuZGlu
Z0xvYWRFdmVudCA9IGZhbHNlOwotICAgIGlmIChtX2VsZW1lbnQtPmRvY3VtZW50KCkuaGFzTGl2
aW5nUmVuZGVyVHJlZSgpKQorICAgIGlmIChlbGVtZW50KCkuZG9jdW1lbnQoKS5oYXNMaXZpbmdS
ZW5kZXJUcmVlKCkpCiAgICAgICAgIGRpc3BhdGNoTG9hZEV2ZW50KCk7CiAKICAgICAvLyBPbmx5
IGNvbnNpZGVyIHVwZGF0aW5nIHRoZSBwcm90ZWN0aW9uIHJlZi1jb3VudCBvZiB0aGUgRWxlbWVu
dCBpbW1lZGlhdGVseSBiZWZvcmUgcmV0dXJuaW5nCkBAIC00NDQsOCArNDQzLDggQEAgdm9pZCBJ
bWFnZUxvYWRlcjo6ZGlzcGF0Y2hQZW5kaW5nRXJyb3JFdmVudCgpCiAgICAgaWYgKCFtX2hhc1Bl
bmRpbmdFcnJvckV2ZW50KQogICAgICAgICByZXR1cm47CiAgICAgbV9oYXNQZW5kaW5nRXJyb3JF
dmVudCA9IGZhbHNlOwotICAgIGlmIChtX2VsZW1lbnQtPmRvY3VtZW50KCkuaGFzTGl2aW5nUmVu
ZGVyVHJlZSgpKQotICAgICAgICBtX2VsZW1lbnQtPmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0
ZShldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgZmFsc2UsIGZhbHNlKSk7CisgICAgaWYgKGVsZW1l
bnQoKS5kb2N1bWVudCgpLmhhc0xpdmluZ1JlbmRlclRyZWUoKSkKKyAgICAgICAgZWxlbWVudCgp
LmRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgZmFs
c2UsIGZhbHNlKSk7CiAKICAgICAvLyBPbmx5IGNvbnNpZGVyIHVwZGF0aW5nIHRoZSBwcm90ZWN0
aW9uIHJlZi1jb3VudCBvZiB0aGUgRWxlbWVudCBpbW1lZGlhdGVseSBiZWZvcmUgcmV0dXJuaW5n
CiAgICAgLy8gZnJvbSB0aGlzIGZ1bmN0aW9uIGFzIGRvaW5nIHNvIG1pZ2h0IHJlc3VsdCBpbiB0
aGUgZGVzdHJ1Y3Rpb24gb2YgdGhpcyBJbWFnZUxvYWRlci4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9JbWFnZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdl
TG9hZGVyLmgKaW5kZXggZDc2ZmEzYS4uNmQ0ZDg4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL0ltYWdlTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ltYWdl
TG9hZGVyLmgKQEAgLTM5LDcgKzM5LDYgQEAgdHlwZWRlZiBFdmVudFNlbmRlcjxJbWFnZUxvYWRl
cj4gSW1hZ2VFdmVudFNlbmRlcjsKIAogY2xhc3MgSW1hZ2VMb2FkZXIgOiBwdWJsaWMgQ2FjaGVk
SW1hZ2VDbGllbnQgewogcHVibGljOgotICAgIGV4cGxpY2l0IEltYWdlTG9hZGVyKEVsZW1lbnQq
KTsKICAgICB2aXJ0dWFsIH5JbWFnZUxvYWRlcigpOwogCiAgICAgLy8gVGhpcyBmdW5jdGlvbiBz
aG91bGQgYmUgY2FsbGVkIHdoZW4gdGhlIGVsZW1lbnQgaXMgYXR0YWNoZWQgdG8gYSBkb2N1bWVu
dDsgc3RhcnRzCkBAIC01Miw3ICs1MSw5IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZWxlbWVudERp
ZE1vdmVUb05ld0RvY3VtZW50KCk7CiAKLSAgICBFbGVtZW50KiBlbGVtZW50KCkgY29uc3QgeyBy
ZXR1cm4gbV9lbGVtZW50OyB9CisgICAgRWxlbWVudCYgZWxlbWVudCgpIHsgcmV0dXJuIG1fZWxl
bWVudDsgfQorICAgIGNvbnN0IEVsZW1lbnQmIGVsZW1lbnQoKSBjb25zdCB7IHJldHVybiBtX2Vs
ZW1lbnQ7IH0KKwogICAgIGJvb2wgaW1hZ2VDb21wbGV0ZSgpIGNvbnN0IHsgcmV0dXJuIG1faW1h
Z2VDb21wbGV0ZTsgfQogCiAgICAgQ2FjaGVkSW1hZ2UqIGltYWdlKCkgY29uc3QgeyByZXR1cm4g
bV9pbWFnZS5nZXQoKTsgfQpAQCAtNzAsNiArNzEsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIHZv
aWQgZGlzcGF0Y2hQZW5kaW5nRXJyb3JFdmVudHMoKTsKIAogcHJvdGVjdGVkOgorICAgIGV4cGxp
Y2l0IEltYWdlTG9hZGVyKEVsZW1lbnQmKTsKICAgICB2aXJ0dWFsIHZvaWQgbm90aWZ5RmluaXNo
ZWQoQ2FjaGVkUmVzb3VyY2UqKSBvdmVycmlkZTsKIAogcHJpdmF0ZToKQEAgLTkwLDcgKzkyLDcg
QEAgcHJpdmF0ZToKIAogICAgIHZvaWQgdGltZXJGaXJlZChUaW1lcjxJbWFnZUxvYWRlcj4mKTsK
IAotICAgIEVsZW1lbnQqIG1fZWxlbWVudDsKKyAgICBFbGVtZW50JiBtX2VsZW1lbnQ7CiAgICAg
Q2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkSW1hZ2U+IG1faW1hZ2U7CiAgICAgVGltZXI8SW1h
Z2VMb2FkZXI+IG1fZGVyZWZFbGVtZW50VGltZXI7CiAgICAgQXRvbWljU3RyaW5nIG1fZmFpbGVk
TG9hZFVSTDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUVsZW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5jcHAKaW5kZXggMGFkOGY3
OS4uZDNmNDA5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdlRWxlbWVudC5jcHAKQEAgLTYy
LDcgKzYyLDcgQEAgaW5saW5lIFNWR0ltYWdlRWxlbWVudDo6U1ZHSW1hZ2VFbGVtZW50KGNvbnN0
IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JgogICAgICwgbV95KExlbmd0aE1vZGVI
ZWlnaHQpCiAgICAgLCBtX3dpZHRoKExlbmd0aE1vZGVXaWR0aCkKICAgICAsIG1faGVpZ2h0KExl
bmd0aE1vZGVIZWlnaHQpCi0gICAgLCBtX2ltYWdlTG9hZGVyKHRoaXMpCisgICAgLCBtX2ltYWdl
TG9hZGVyKCp0aGlzKQogewogICAgIHJlZ2lzdGVyQW5pbWF0ZWRQcm9wZXJ0aWVzRm9yU1ZHSW1h
Z2VFbGVtZW50KCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VM
b2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdlTG9hZGVyLmNwcAppbmRleCBm
NjVmNjcxLi4yNmNiNGE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VM
b2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdJbWFnZUxvYWRlci5jcHAKQEAg
LTI3LDMzICsyNywzNSBAQAogI2luY2x1ZGUgIkV2ZW50LmgiCiAjaW5jbHVkZSAiRXZlbnROYW1l
cy5oIgogI2luY2x1ZGUgIkhUTUxQYXJzZXJJZGlvbXMuaCIKLSNpbmNsdWRlICJSZW5kZXJJbWFn
ZS5oIgogI2luY2x1ZGUgIlNWR0ltYWdlRWxlbWVudC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKLVNWR0ltYWdlTG9hZGVyOjpTVkdJbWFnZUxvYWRlcihTVkdJbWFnZUVsZW1lbnQqIG5vZGUp
Ci0gICAgOiBJbWFnZUxvYWRlcihub2RlKQorU1ZHSW1hZ2VMb2FkZXI6OlNWR0ltYWdlTG9hZGVy
KFNWR0ltYWdlRWxlbWVudCYgZWxlbWVudCkKKyAgICA6IEltYWdlTG9hZGVyKGVsZW1lbnQpCit7
Cit9CisKK1NWR0ltYWdlTG9hZGVyOjp+U1ZHSW1hZ2VMb2FkZXIoKQogewogfQogCiB2b2lkIFNW
R0ltYWdlTG9hZGVyOjpkaXNwYXRjaExvYWRFdmVudCgpCiB7CiAgICAgaWYgKGltYWdlKCktPmVy
cm9yT2NjdXJyZWQoKSkKLSAgICAgICAgZWxlbWVudCgpLT5kaXNwYXRjaEV2ZW50KEV2ZW50Ojpj
cmVhdGUoZXZlbnROYW1lcygpLmVycm9yRXZlbnQsIGZhbHNlLCBmYWxzZSkpOworICAgICAgICBl
bGVtZW50KCkuZGlzcGF0Y2hFdmVudChFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZXMoKS5lcnJvckV2
ZW50LCBmYWxzZSwgZmFsc2UpKTsKICAgICBlbHNlIHsKLSAgICAgICAgU1ZHSW1hZ2VFbGVtZW50
KiBpbWFnZUVsZW1lbnQgPSB0b1NWR0ltYWdlRWxlbWVudChlbGVtZW50KCkpOwotICAgICAgICBp
ZiAoaW1hZ2VFbGVtZW50LT5leHRlcm5hbFJlc291cmNlc1JlcXVpcmVkQmFzZVZhbHVlKCkpCi0g
ICAgICAgICAgICBpbWFnZUVsZW1lbnQtPnNlbmRTVkdMb2FkRXZlbnRJZlBvc3NpYmxlKHRydWUp
OworICAgICAgICBpZiAodG9TVkdJbWFnZUVsZW1lbnQoZWxlbWVudCgpKS5leHRlcm5hbFJlc291
cmNlc1JlcXVpcmVkQmFzZVZhbHVlKCkpCisgICAgICAgICAgICB0b1NWR0ltYWdlRWxlbWVudChJ
bWFnZUxvYWRlcjo6ZWxlbWVudCgpKS5zZW5kU1ZHTG9hZEV2ZW50SWZQb3NzaWJsZSh0cnVlKTsK
ICAgICB9CiB9CiAKIFN0cmluZyBTVkdJbWFnZUxvYWRlcjo6c291cmNlVVJJKGNvbnN0IEF0b21p
Y1N0cmluZyYgYXR0cmlidXRlKSBjb25zdAogewotICAgIFVSTCBiYXNlID0gZWxlbWVudCgpLT5i
YXNlVVJJKCk7CisgICAgVVJMIGJhc2UgPSBlbGVtZW50KCkuYmFzZVVSSSgpOwogICAgIGlmIChi
YXNlLmlzVmFsaWQoKSkKICAgICAgICAgcmV0dXJuIFVSTChiYXNlLCBzdHJpcExlYWRpbmdBbmRU
cmFpbGluZ0hUTUxTcGFjZXMoYXR0cmlidXRlKSkuc3RyaW5nKCk7Ci0gICAgcmV0dXJuIGVsZW1l
bnQoKS0+ZG9jdW1lbnQoKS5jb21wbGV0ZVVSTChzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0hUTUxT
cGFjZXMoYXR0cmlidXRlKSk7CisgICAgcmV0dXJuIGVsZW1lbnQoKS5kb2N1bWVudCgpLmNvbXBs
ZXRlVVJMKHN0cmlwTGVhZGluZ0FuZFRyYWlsaW5nSFRNTFNwYWNlcyhhdHRyaWJ1dGUpKTsKIH0K
IAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ltYWdlTG9hZGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VMb2FkZXIuaAppbmRleCBlODUzYjU3Li4xM2Q2MTlj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VMb2FkZXIuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHSW1hZ2VMb2FkZXIuaApAQCAtMjcsOSArMjcsMTAgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBTVkdJbWFnZUVsZW1lbnQ7CiAKLWNsYXNzIFNWR0lt
YWdlTG9hZGVyIDogcHVibGljIEltYWdlTG9hZGVyIHsKK2NsYXNzIFNWR0ltYWdlTG9hZGVyIGZp
bmFsIDogcHVibGljIEltYWdlTG9hZGVyIHsKIHB1YmxpYzoKLSAgICBTVkdJbWFnZUxvYWRlcihT
VkdJbWFnZUVsZW1lbnQqKTsKKyAgICBleHBsaWNpdCBTVkdJbWFnZUxvYWRlcihTVkdJbWFnZUVs
ZW1lbnQmKTsKKyAgICB2aXJ0dWFsIH5TVkdJbWFnZUxvYWRlcigpOwogCiBwcml2YXRlOgogICAg
IHZpcnR1YWwgdm9pZCBkaXNwYXRjaExvYWRFdmVudCgpIG92ZXJyaWRlOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>