<?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>214332</bug_id>
          
          <creation_ts>2020-07-14 16:44:51 -0700</creation_ts>
          <short_desc>We must hold the CodeBlock lock when calling StructureStubInfo::reset</short_desc>
          <delta_ts>2020-07-14 22:54:51 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Saam Barati">saam</reporter>
          <assigned_to name="Saam Barati">saam</assigned_to>
          <cc>benjamin</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>gskachkov</cc>
    
    <cc>guijemont</cc>
    
    <cc>jsc32</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>ticaiolima</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1671597</commentid>
    <comment_count>0</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-07-14 16:44:51 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671598</commentid>
    <comment_count>1</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-07-14 16:45:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/64940787&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671601</commentid>
    <comment_count>2</comment_count>
      <attachid>404307</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-07-14 16:54:18 -0700</bug_when>
    <thetext>Created attachment 404307
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671605</commentid>
    <comment_count>3</comment_count>
      <attachid>404307</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-07-14 16:56:35 -0700</bug_when>
    <thetext>Comment on attachment 404307
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671607</commentid>
    <comment_count>4</comment_count>
      <attachid>404307</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-07-14 16:57:28 -0700</bug_when>
    <thetext>Comment on attachment 404307
patch

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

&gt; Source/JavaScriptCore/jit/Repatch.cpp:148
&gt; +        {
&gt; +            GCSafeConcurrentJSLocker locker(codeBlock-&gt;m_lock, vm.heap);
&gt; +            stubInfo.reset(locker, codeBlock);
&gt; +        }

this is the bug fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1671664</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-07-14 22:54:50 -0700</bug_when>
    <thetext>Committed r264388: &lt;https://trac.webkit.org/changeset/264388&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 404307.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>404307</attachid>
            <date>2020-07-14 16:54:18 -0700</date>
            <delta_ts>2020-07-14 22:54:50 -0700</delta_ts>
            <desc>patch</desc>
            <filename>c-backup.diff</filename>
            <type>text/plain</type>
            <size>15722</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjQzODIpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE2IEBACisyMDIwLTA3LTE0ICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUu
Y29tPgorCisgICAgICAgIFdlIG11c3QgaG9sZCB0aGUgQ29kZUJsb2NrIGxvY2sgd2hlbiBjYWxs
aW5nIFN0cnVjdHVyZVN0dWJJbmZvOjpyZXNldAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE0MzMyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82NDk0
MDc4Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHN0cmVzcy9ob2xkLWxvY2std2hlbi1yZXNldHRpbmctc3RydWN0dXJlLXN0dWItaW5mby5qczog
QWRkZWQuCisgICAgICAgIChmb28uYmFyLkMpOgorICAgICAgICAoZm9vLmJhcik6CisgICAgICAg
IChmb28pOgorCiAyMDIwLTA3LTE0ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KIAog
ICAgICAgICBIYW5kbGUgb3V0IG9mIG1lbW9yeSBlcnJvciB3aGlsZSBjcmVhdGluZyBhbiBlcnJv
ciBtZXNzYWdlIGluIHRoZSBsaXRlcmFsIHBhcnNlci4KSW5kZXg6IEpTVGVzdHMvc3RyZXNzL2hv
bGQtbG9jay13aGVuLXJlc2V0dGluZy1zdHJ1Y3R1cmUtc3R1Yi1pbmZvLmpzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIEpTVGVzdHMvc3RyZXNzL2hvbGQtbG9jay13aGVuLXJlc2V0dGluZy1zdHJ1Y3R1cmUtc3R1
Yi1pbmZvLmpzCShub25leGlzdGVudCkKKysrIEpTVGVzdHMvc3RyZXNzL2hvbGQtbG9jay13aGVu
LXJlc2V0dGluZy1zdHJ1Y3R1cmUtc3R1Yi1pbmZvLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsMjIgQEAKKy8vQCBydW5EZWZhdWx0KCItLWppdFBvbGljeVNjYWxlPTAiKQorCitmdW5jdGlv
biBmb28oKSB7CisgICAgZnVuY3Rpb24gYmFyKCkgeworICAgICAgICBjbGFzcyBDIHsKKyAgICAg
ICAgICAgIGNvbnN0cnVjdG9yKCkgeworICAgICAgICAgICAgICAgIHRoaXMueCA9IDQyOworICAg
ICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGxldCBjID0gbmV3IEMoKTsKKyAgICAgICAg
Zm9yIChsZXQgaT0wOyBpPDEwMDsgaSsrKSB7CisgICAgICAgICAgICBjLng7CisgICAgICAgIH0K
KyAgICB9OworICAgIGZvciAobGV0IGk9MDsgaTwxMDAwOyBpKyspIHsKKyAgICAgICAgYmFyKCk7
CisgICAgfQorfQorCitmb3IgKGxldCBpPTA7IGk8MjU7IGkrKykgeworICAgIHJ1blN0cmluZyhg
JHtmb299O2ZvbygpO2ApOworfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lv
biAyNjQzNzIpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsNDEgQEAKKzIwMjAtMDctMTQgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBh
cHBsZS5jb20+CisKKyAgICAgICAgV2UgbXVzdCBob2xkIHRoZSBDb2RlQmxvY2sgbG9jayB3aGVu
IGNhbGxpbmcgU3RydWN0dXJlU3R1YkluZm86OnJlc2V0CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTQzMzIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzY0OTQwNzg3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFRoZXJlIHdhcyBhIHJhY2UgYmV0d2VlbiByZXNldHRpbmcgdGhlIFN0cnVjdHVyZVN0dWJJ
bmZvLCBhbmQgcmVhZGluZyBmcm9tCisgICAgICAgIGl0IGZyb20gdGhlIGNvbXBpbGVyIHRocmVh
ZC4gVGhlcmUgd2FzIG9uZSBwbGFjZSBpbnNpZGUgUmVwYXRjaCB3aGVyZSB3ZQorICAgICAgICBk
aWRuJ3QgaG9sZCB0aGUgQ29kZUJsb2NrJ3MgbG9jayB3aGVuIGNhbGxpbmcgU3RydWN0dXJlU3R1
YkluZm86OnJlc2V0LgorICAgICAgICAKKyAgICAgICAgVG8gbWFrZSBpdCBjbGVhciB3aGljaCBm
dW5jdGlvbnMgcmVxdWlyZSB0aGUgQ29kZUJsb2NrJ3MgbG9jayB0byBiZQorICAgICAgICBoZWxk
IHdoZW4gY2FsbGVkLCBJJ3ZlIGNoYW5nZWQgYWxsIHN1Y2ggZnVuY3Rpb25zIHRvIHRha2UgdGhl
CisgICAgICAgIExvY2tIb2xkZXIgYXMgYSBwYXJhbWV0ZXIuCisKKyAgICAgICAgKiBieXRlY29k
ZS9Db2RlQmxvY2suY3BwOgorICAgICAgICAoSlNDOjpDb2RlQmxvY2s6OmZpbmFsaXplQmFzZWxp
bmVKSVRJbmxpbmVDYWNoZXMpOgorICAgICAgICAqIGJ5dGVjb2RlL1N0cnVjdHVyZVN0dWJDbGVh
cmluZ1dhdGNocG9pbnQuY3BwOgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVUcmFuc2l0aW9uU3Ry
dWN0dXJlU3R1YkNsZWFyaW5nV2F0Y2hwb2ludDo6ZmlyZUludGVybmFsKToKKyAgICAgICAgKEpT
Qzo6QWRhcHRpdmVWYWx1ZVN0cnVjdHVyZVN0dWJDbGVhcmluZ1dhdGNocG9pbnQ6OmhhbmRsZUZp
cmUpOgorICAgICAgICAqIGJ5dGVjb2RlL1N0cnVjdHVyZVN0dWJJbmZvLmNwcDoKKyAgICAgICAg
KEpTQzo6U3RydWN0dXJlU3R1YkluZm86OmluaXRHZXRCeUlkU2VsZik6CisgICAgICAgIChKU0M6
OlN0cnVjdHVyZVN0dWJJbmZvOjppbml0QXJyYXlMZW5ndGgpOgorICAgICAgICAoSlNDOjpTdHJ1
Y3R1cmVTdHViSW5mbzo6aW5pdFN0cmluZ0xlbmd0aCk6CisgICAgICAgIChKU0M6OlN0cnVjdHVy
ZVN0dWJJbmZvOjppbml0UHV0QnlJZFJlcGxhY2UpOgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVT
dHViSW5mbzo6aW5pdEluQnlJZFNlbGYpOgorICAgICAgICAoSlNDOjpTdHJ1Y3R1cmVTdHViSW5m
bzo6YWRkQWNjZXNzQ2FzZSk6CisgICAgICAgIChKU0M6OlN0cnVjdHVyZVN0dWJJbmZvOjpyZXNl
dCk6CisgICAgICAgIChKU0M6OlN0cnVjdHVyZVN0dWJJbmZvOjp2aXNpdFdlYWtSZWZlcmVuY2Vz
KToKKyAgICAgICAgKEpTQzo6U3RydWN0dXJlU3R1YkluZm86OnNldENhY2hlVHlwZSk6CisgICAg
ICAgICogYnl0ZWNvZGUvU3RydWN0dXJlU3R1YkluZm8uaDoKKyAgICAgICAgKiBqaXQvUmVwYXRj
aC5jcHA6CisgICAgICAgIChKU0M6OmZpcmVXYXRjaHBvaW50c0FuZENsZWFyU3R1YklmTmVlZGVk
KToKKyAgICAgICAgKEpTQzo6dHJ5Q2FjaGVHZXRCeSk6CisgICAgICAgIChKU0M6OnRyeUNhY2hl
UHV0QnlJRCk6CisgICAgICAgIChKU0M6OnRyeUNhY2hlSW5CeUlEKToKKwogMjAyMC0wNy0xNCAg
Q2FpdGxpbiBQb3R0ZXIgIDxjYWl0cEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtKU0NdIGZpeHVw
IExMSW50IGZhc3QgcGF0aCBpbiBvcF9nZXRfcHJpdmF0ZV9uYW1lCkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAkocmV2aXNpb24gMjY0MzcyKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTE0MjcsOCArMTQyNywxMCBAQCB2b2lkIENvZGVCbG9jazo6ZmluYWxpemVCYXNl
bGluZUpJVElubGluCiAgICAgICAgIGZvciAoQ2FsbExpbmtJbmZvKiBjYWxsTGlua0luZm8gOiBq
aXREYXRhLT5tX2NhbGxMaW5rSW5mb3MpCiAgICAgICAgICAgICBjYWxsTGlua0luZm8tPnZpc2l0
V2Vhayh2bSgpKTsKIAotICAgICAgICBmb3IgKFN0cnVjdHVyZVN0dWJJbmZvKiBzdHViSW5mbyA6
IGppdERhdGEtPm1fc3R1YkluZm9zKQotICAgICAgICAgICAgc3R1YkluZm8tPnZpc2l0V2Vha1Jl
ZmVyZW5jZXModGhpcyk7CisgICAgICAgIGZvciAoU3RydWN0dXJlU3R1YkluZm8qIHN0dWJJbmZv
IDogaml0RGF0YS0+bV9zdHViSW5mb3MpIHsKKyAgICAgICAgICAgIENvbmN1cnJlbnRKU0xvY2tl
ckJhc2UgbG9ja2VyKE5vTG9ja2luZ05lY2Vzc2FyeSk7CisgICAgICAgICAgICBzdHViSW5mby0+
dmlzaXRXZWFrUmVmZXJlbmNlcyhsb2NrZXIsIHRoaXMpOworICAgICAgICB9CiAgICAgfQogfQog
I2VuZGlmCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3RydWN0dXJlU3R1
YkNsZWFyaW5nV2F0Y2hwb2ludC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2J5dGVjb2RlL1N0cnVjdHVyZVN0dWJDbGVhcmluZ1dhdGNocG9pbnQuY3BwCShyZXZpc2lv
biAyNjQzNzIpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3RydWN0dXJlU3R1
YkNsZWFyaW5nV2F0Y2hwb2ludC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDcgKzQ0LDcgQEAg
dm9pZCBTdHJ1Y3R1cmVUcmFuc2l0aW9uU3RydWN0dXJlU3R1YkNsZQogICAgICAgICAvLyBUaGF0
IHdvcmtzLCBiZWNhdXNlIGRlbGV0aW5nIGEgd2F0Y2hwb2ludCByZW1vdmVzIGl0IGZyb20gdGhl
IHNldCdzIGxpc3QsIGFuZAogICAgICAgICAvLyB0aGUgc2V0J3MgbGlzdCB0cmF2ZXJzYWwgZm9y
IGZpcmluZyBpcyByb2J1c3QgYWdhaW5zdCB0aGUgc2V0IGNoYW5naW5nLgogICAgICAgICBDb25j
dXJyZW50SlNMb2NrZXIgbG9ja2VyKG1faG9sZGVyLT5jb2RlQmxvY2soKS0+bV9sb2NrKTsKLSAg
ICAgICAgbV9ob2xkZXItPnN0dWJJbmZvKCktPnJlc2V0KG1faG9sZGVyLT5jb2RlQmxvY2soKSk7
CisgICAgICAgIG1faG9sZGVyLT5zdHViSW5mbygpLT5yZXNldChsb2NrZXIsIG1faG9sZGVyLT5j
b2RlQmxvY2soKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTExNSw3ICsxMTUsNyBA
QCB2b2lkIEFkYXB0aXZlVmFsdWVTdHJ1Y3R1cmVTdHViQ2xlYXJpbmdXCiAgICAgLy8gVGhhdCB3
b3JrcywgYmVjYXVzZSBkZWxldGluZyBhIHdhdGNocG9pbnQgcmVtb3ZlcyBpdCBmcm9tIHRoZSBz
ZXQncyBsaXN0LCBhbmQKICAgICAvLyB0aGUgc2V0J3MgbGlzdCB0cmF2ZXJzYWwgZm9yIGZpcmlu
ZyBpcyByb2J1c3QgYWdhaW5zdCB0aGUgc2V0IGNoYW5naW5nLgogICAgIENvbmN1cnJlbnRKU0xv
Y2tlciBsb2NrZXIobV9ob2xkZXItPmNvZGVCbG9jaygpLT5tX2xvY2spOwotICAgIG1faG9sZGVy
LT5zdHViSW5mbygpLT5yZXNldChtX2hvbGRlci0+Y29kZUJsb2NrKCkpOworICAgIG1faG9sZGVy
LT5zdHViSW5mbygpLT5yZXNldChsb2NrZXIsIG1faG9sZGVyLT5jb2RlQmxvY2soKSk7CiB9CiAK
IH0gLy8gbmFtZXNwYWNlIEpTQwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2Rl
L1N0cnVjdHVyZVN0dWJJbmZvLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvZGUvU3RydWN0dXJlU3R1YkluZm8uY3BwCShyZXZpc2lvbiAyNjQzNzIpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3RydWN0dXJlU3R1YkluZm8uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC01NywxMCArNTcsMTAgQEAgU3RydWN0dXJlU3R1YkluZm86On5TdHJ1Y3R1
cmVTdHViSW5mbygpCiB7CiB9CiAKLXZvaWQgU3RydWN0dXJlU3R1YkluZm86OmluaXRHZXRCeUlk
U2VsZihDb2RlQmxvY2sqIGNvZGVCbG9jaywgU3RydWN0dXJlKiBiYXNlT2JqZWN0U3RydWN0dXJl
LCBQcm9wZXJ0eU9mZnNldCBvZmZzZXQsIENhY2hlYWJsZUlkZW50aWZpZXIgaWRlbnRpZmllcikK
K3ZvaWQgU3RydWN0dXJlU3R1YkluZm86OmluaXRHZXRCeUlkU2VsZihjb25zdCBDb25jdXJyZW50
SlNMb2NrZXJCYXNlJiBsb2NrZXIsIENvZGVCbG9jayogY29kZUJsb2NrLCBTdHJ1Y3R1cmUqIGJh
c2VPYmplY3RTdHJ1Y3R1cmUsIFByb3BlcnR5T2Zmc2V0IG9mZnNldCwgQ2FjaGVhYmxlSWRlbnRp
ZmllciBpZGVudGlmaWVyKQogewogICAgIEFTU0VSVChoYXNDb25zdGFudElkZW50aWZpZXIpOwot
ICAgIHNldENhY2hlVHlwZShDYWNoZVR5cGU6OkdldEJ5SWRTZWxmKTsKKyAgICBzZXRDYWNoZVR5
cGUobG9ja2VyLCBDYWNoZVR5cGU6OkdldEJ5SWRTZWxmKTsKICAgICBtX2lkZW50aWZpZXIgPSBp
ZGVudGlmaWVyOwogICAgIGNvZGVCbG9jay0+dm0oKS5oZWFwLndyaXRlQmFycmllcihjb2RlQmxv
Y2spOwogICAgIApAQCAtNjksMTkgKzY5LDE5IEBAIHZvaWQgU3RydWN0dXJlU3R1YkluZm86Omlu
aXRHZXRCeUlkU2VsZigKICAgICB1LmJ5SWRTZWxmLm9mZnNldCA9IG9mZnNldDsKIH0KIAotdm9p
ZCBTdHJ1Y3R1cmVTdHViSW5mbzo6aW5pdEFycmF5TGVuZ3RoKCkKK3ZvaWQgU3RydWN0dXJlU3R1
YkluZm86OmluaXRBcnJheUxlbmd0aChjb25zdCBDb25jdXJyZW50SlNMb2NrZXJCYXNlJiBsb2Nr
ZXIpCiB7Ci0gICAgc2V0Q2FjaGVUeXBlKENhY2hlVHlwZTo6QXJyYXlMZW5ndGgpOworICAgIHNl
dENhY2hlVHlwZShsb2NrZXIsIENhY2hlVHlwZTo6QXJyYXlMZW5ndGgpOwogfQogCi12b2lkIFN0
cnVjdHVyZVN0dWJJbmZvOjppbml0U3RyaW5nTGVuZ3RoKCkKK3ZvaWQgU3RydWN0dXJlU3R1Yklu
Zm86OmluaXRTdHJpbmdMZW5ndGgoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyQmFzZSYgbG9ja2Vy
KQogewotICAgIHNldENhY2hlVHlwZShDYWNoZVR5cGU6OlN0cmluZ0xlbmd0aCk7CisgICAgc2V0
Q2FjaGVUeXBlKGxvY2tlciwgQ2FjaGVUeXBlOjpTdHJpbmdMZW5ndGgpOwogfQogCi12b2lkIFN0
cnVjdHVyZVN0dWJJbmZvOjppbml0UHV0QnlJZFJlcGxhY2UoQ29kZUJsb2NrKiBjb2RlQmxvY2ss
IFN0cnVjdHVyZSogYmFzZU9iamVjdFN0cnVjdHVyZSwgUHJvcGVydHlPZmZzZXQgb2Zmc2V0LCBD
YWNoZWFibGVJZGVudGlmaWVyIGlkZW50aWZpZXIpCit2b2lkIFN0cnVjdHVyZVN0dWJJbmZvOjpp
bml0UHV0QnlJZFJlcGxhY2UoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyQmFzZSYgbG9ja2VyLCBD
b2RlQmxvY2sqIGNvZGVCbG9jaywgU3RydWN0dXJlKiBiYXNlT2JqZWN0U3RydWN0dXJlLCBQcm9w
ZXJ0eU9mZnNldCBvZmZzZXQsIENhY2hlYWJsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKLSAg
ICBzZXRDYWNoZVR5cGUoQ2FjaGVUeXBlOjpQdXRCeUlkUmVwbGFjZSk7CisgICAgc2V0Q2FjaGVU
eXBlKGxvY2tlciwgQ2FjaGVUeXBlOjpQdXRCeUlkUmVwbGFjZSk7CiAgICAgbV9pZGVudGlmaWVy
ID0gaWRlbnRpZmllcjsKICAgICBjb2RlQmxvY2stPnZtKCkuaGVhcC53cml0ZUJhcnJpZXIoY29k
ZUJsb2NrKTsKIApAQCAtOTAsOSArOTAsOSBAQCB2b2lkIFN0cnVjdHVyZVN0dWJJbmZvOjppbml0
UHV0QnlJZFJlcGxhCiAgICAgdS5ieUlkU2VsZi5vZmZzZXQgPSBvZmZzZXQ7CiB9CiAKLXZvaWQg
U3RydWN0dXJlU3R1YkluZm86OmluaXRJbkJ5SWRTZWxmKENvZGVCbG9jayogY29kZUJsb2NrLCBT
dHJ1Y3R1cmUqIGJhc2VPYmplY3RTdHJ1Y3R1cmUsIFByb3BlcnR5T2Zmc2V0IG9mZnNldCwgQ2Fj
aGVhYmxlSWRlbnRpZmllciBpZGVudGlmaWVyKQordm9pZCBTdHJ1Y3R1cmVTdHViSW5mbzo6aW5p
dEluQnlJZFNlbGYoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyQmFzZSYgbG9ja2VyLCBDb2RlQmxv
Y2sqIGNvZGVCbG9jaywgU3RydWN0dXJlKiBiYXNlT2JqZWN0U3RydWN0dXJlLCBQcm9wZXJ0eU9m
ZnNldCBvZmZzZXQsIENhY2hlYWJsZUlkZW50aWZpZXIgaWRlbnRpZmllcikKIHsKLSAgICBzZXRD
YWNoZVR5cGUoQ2FjaGVUeXBlOjpJbkJ5SWRTZWxmKTsKKyAgICBzZXRDYWNoZVR5cGUobG9ja2Vy
LCBDYWNoZVR5cGU6OkluQnlJZFNlbGYpOwogICAgIG1faWRlbnRpZmllciA9IGlkZW50aWZpZXI7
CiAgICAgY29kZUJsb2NrLT52bSgpLmhlYXAud3JpdGVCYXJyaWVyKGNvZGVCbG9jayk7CiAKQEAg
LTE5MCw3ICsxOTAsNyBAQCBBY2Nlc3NHZW5lcmF0aW9uUmVzdWx0IFN0cnVjdHVyZVN0dWJJbmZv
CiAgICAgICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIAotICAgICAgICAgICAgc2V0Q2FjaGVUeXBlKENhY2hlVHlwZTo6U3R1Yik7CisgICAgICAg
ICAgICBzZXRDYWNoZVR5cGUobG9ja2VyLCBDYWNoZVR5cGU6OlN0dWIpOwogICAgICAgICAgICAg
dS5zdHViID0gYWNjZXNzLnJlbGVhc2UoKTsKICAgICAgICAgfQogICAgICAgICAKQEAgLTIzNiw3
ICsyMzYsNyBAQCBBY2Nlc3NHZW5lcmF0aW9uUmVzdWx0IFN0cnVjdHVyZVN0dWJJbmZvCiAgICAg
cmV0dXJuIHJlc3VsdDsKIH0KIAotdm9pZCBTdHJ1Y3R1cmVTdHViSW5mbzo6cmVzZXQoQ29kZUJs
b2NrKiBjb2RlQmxvY2spCit2b2lkIFN0cnVjdHVyZVN0dWJJbmZvOjpyZXNldChjb25zdCBDb25j
dXJyZW50SlNMb2NrZXJCYXNlJiBsb2NrZXIsIENvZGVCbG9jayogY29kZUJsb2NrKQogewogICAg
IGNsZWFyQnVmZmVyZWRTdHJ1Y3R1cmVzKCk7CiAKQEAgLTI4Myw3ICsyODMsNyBAQCB2b2lkIFN0
cnVjdHVyZVN0dWJJbmZvOjpyZXNldChDb2RlQmxvY2sqCiAgICAgfQogICAgIAogICAgIGRlcmVm
KCk7Ci0gICAgc2V0Q2FjaGVUeXBlKENhY2hlVHlwZTo6VW5zZXQpOworICAgIHNldENhY2hlVHlw
ZShsb2NrZXIsIENhY2hlVHlwZTo6VW5zZXQpOwogfQogCiB2b2lkIFN0cnVjdHVyZVN0dWJJbmZv
Ojp2aXNpdEFnZ3JlZ2F0ZShTbG90VmlzaXRvciYgdmlzaXRvcikKQEAgLTMxMiw3ICszMTIsNyBA
QCB2b2lkIFN0cnVjdHVyZVN0dWJJbmZvOjp2aXNpdEFnZ3JlZ2F0ZShTCiAgICAgcmV0dXJuOwog
fQogCi12b2lkIFN0cnVjdHVyZVN0dWJJbmZvOjp2aXNpdFdlYWtSZWZlcmVuY2VzKENvZGVCbG9j
ayogY29kZUJsb2NrKQordm9pZCBTdHJ1Y3R1cmVTdHViSW5mbzo6dmlzaXRXZWFrUmVmZXJlbmNl
cyhjb25zdCBDb25jdXJyZW50SlNMb2NrZXJCYXNlJiBsb2NrZXIsIENvZGVCbG9jayogY29kZUJs
b2NrKQogewogICAgIFZNJiB2bSA9IGNvZGVCbG9jay0+dm0oKTsKICAgICB7CkBAIC0zMzgsNyAr
MzM4LDcgQEAgdm9pZCBTdHJ1Y3R1cmVTdHViSW5mbzo6dmlzaXRXZWFrUmVmZXJlbgogICAgICAg
ICByZXR1cm47CiAgICAgfQogCi0gICAgcmVzZXQoY29kZUJsb2NrKTsKKyAgICByZXNldChsb2Nr
ZXIsIGNvZGVCbG9jayk7CiAgICAgcmVzZXRCeUdDID0gdHJ1ZTsKIH0KIApAQCAtNDAxLDcgKzQw
MSw3IEBAIGJvb2wgU3RydWN0dXJlU3R1YkluZm86OmNvbnRhaW5zUEModm9pZCoKICAgICByZXR1
cm4gdS5zdHViLT5jb250YWluc1BDKHBjKTsKIH0KIAotdm9pZCBTdHJ1Y3R1cmVTdHViSW5mbzo6
c2V0Q2FjaGVUeXBlKENhY2hlVHlwZSBuZXdDYWNoZVR5cGUpCit2b2lkIFN0cnVjdHVyZVN0dWJJ
bmZvOjpzZXRDYWNoZVR5cGUoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyQmFzZSYsIENhY2hlVHlw
ZSBuZXdDYWNoZVR5cGUpCiB7CiAgICAgc3dpdGNoIChtX2NhY2hlVHlwZSkgewogICAgIGNhc2Ug
Q2FjaGVUeXBlOjpVbnNldDoKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9T
dHJ1Y3R1cmVTdHViSW5mby5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
eXRlY29kZS9TdHJ1Y3R1cmVTdHViSW5mby5oCShyZXZpc2lvbiAyNjQzNzIpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3RydWN0dXJlU3R1YkluZm8uaAkod29ya2luZyBjb3B5
KQpAQCAtNzcsMTUgKzc3LDE1IEBAIHB1YmxpYzoKICAgICBTdHJ1Y3R1cmVTdHViSW5mbyhBY2Nl
c3NUeXBlKTsKICAgICB+U3RydWN0dXJlU3R1YkluZm8oKTsKIAotICAgIHZvaWQgaW5pdEdldEJ5
SWRTZWxmKENvZGVCbG9jayosIFN0cnVjdHVyZSogYmFzZU9iamVjdFN0cnVjdHVyZSwgUHJvcGVy
dHlPZmZzZXQsIENhY2hlYWJsZUlkZW50aWZpZXIpOwotICAgIHZvaWQgaW5pdEFycmF5TGVuZ3Ro
KCk7Ci0gICAgdm9pZCBpbml0U3RyaW5nTGVuZ3RoKCk7Ci0gICAgdm9pZCBpbml0UHV0QnlJZFJl
cGxhY2UoQ29kZUJsb2NrKiwgU3RydWN0dXJlKiBiYXNlT2JqZWN0U3RydWN0dXJlLCBQcm9wZXJ0
eU9mZnNldCwgQ2FjaGVhYmxlSWRlbnRpZmllcik7Ci0gICAgdm9pZCBpbml0SW5CeUlkU2VsZihD
b2RlQmxvY2sqLCBTdHJ1Y3R1cmUqIGJhc2VPYmplY3RTdHJ1Y3R1cmUsIFByb3BlcnR5T2Zmc2V0
LCBDYWNoZWFibGVJZGVudGlmaWVyKTsKKyAgICB2b2lkIGluaXRHZXRCeUlkU2VsZihjb25zdCBD
b25jdXJyZW50SlNMb2NrZXJCYXNlJiwgQ29kZUJsb2NrKiwgU3RydWN0dXJlKiBiYXNlT2JqZWN0
U3RydWN0dXJlLCBQcm9wZXJ0eU9mZnNldCwgQ2FjaGVhYmxlSWRlbnRpZmllcik7CisgICAgdm9p
ZCBpbml0QXJyYXlMZW5ndGgoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyQmFzZSYpOworICAgIHZv
aWQgaW5pdFN0cmluZ0xlbmd0aChjb25zdCBDb25jdXJyZW50SlNMb2NrZXJCYXNlJik7CisgICAg
dm9pZCBpbml0UHV0QnlJZFJlcGxhY2UoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyQmFzZSYsIENv
ZGVCbG9jayosIFN0cnVjdHVyZSogYmFzZU9iamVjdFN0cnVjdHVyZSwgUHJvcGVydHlPZmZzZXQs
IENhY2hlYWJsZUlkZW50aWZpZXIpOworICAgIHZvaWQgaW5pdEluQnlJZFNlbGYoY29uc3QgQ29u
Y3VycmVudEpTTG9ja2VyQmFzZSYsIENvZGVCbG9jayosIFN0cnVjdHVyZSogYmFzZU9iamVjdFN0
cnVjdHVyZSwgUHJvcGVydHlPZmZzZXQsIENhY2hlYWJsZUlkZW50aWZpZXIpOwogCiAgICAgQWNj
ZXNzR2VuZXJhdGlvblJlc3VsdCBhZGRBY2Nlc3NDYXNlKGNvbnN0IEdDU2FmZUNvbmN1cnJlbnRK
U0xvY2tlciYsIEpTR2xvYmFsT2JqZWN0KiwgQ29kZUJsb2NrKiwgRUNNQU1vZGUsIENhY2hlYWJs
ZUlkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxBY2Nlc3NDYXNlPik7CiAKLSAgICB2b2lkIHJl
c2V0KENvZGVCbG9jayopOworICAgIHZvaWQgcmVzZXQoY29uc3QgQ29uY3VycmVudEpTTG9ja2Vy
QmFzZSYsIENvZGVCbG9jayopOwogCiAgICAgdm9pZCBkZXJlZigpOwogICAgIHZvaWQgYWJvdXRU
b0RpZSgpOwpAQCAtOTQsNyArOTQsNyBAQCBwdWJsaWM6CiAKICAgICAvLyBDaGVjayBpZiB0aGUg
c3R1YiBoYXMgd2VhayByZWZlcmVuY2VzIHRoYXQgYXJlIGRlYWQuIElmIGl0IGRvZXMsIHRoZW4g
aXQgcmVzZXRzIGl0c2VsZiwKICAgICAvLyBlaXRoZXIgZW50aXJlbHkgb3IganVzdCBlbm91Z2gg
dG8gZW5zdXJlIHRoYXQgdGhvc2UgZGVhZCBwb2ludGVycyBkb24ndCBnZXQgdXNlZCBhbnltb3Jl
LgotICAgIHZvaWQgdmlzaXRXZWFrUmVmZXJlbmNlcyhDb2RlQmxvY2sqKTsKKyAgICB2b2lkIHZp
c2l0V2Vha1JlZmVyZW5jZXMoY29uc3QgQ29uY3VycmVudEpTTG9ja2VyQmFzZSYsIENvZGVCbG9j
ayopOwogICAgIAogICAgIC8vIFRoaXMgcmV0dXJucyB0cnVlIGlmIGl0IGhhcyBtYXJrZWQgZXZl
cnl0aGluZyB0aGF0IGl0IHdpbGwgZXZlciBtYXJrLgogICAgIGJvb2wgcHJvcGFnYXRlVHJhbnNp
dGlvbnMoU2xvdFZpc2l0b3ImKTsKQEAgLTI1Nyw3ICsyNTcsNyBAQCBwcml2YXRlOgogICAgICAg
ICByZXR1cm4gZmFsc2U7CiAgICAgfQogCi0gICAgdm9pZCBzZXRDYWNoZVR5cGUoQ2FjaGVUeXBl
KTsKKyAgICB2b2lkIHNldENhY2hlVHlwZShjb25zdCBDb25jdXJyZW50SlNMb2NrZXJCYXNlJiwg
Q2FjaGVUeXBlKTsKIAogICAgIHZvaWQgY2xlYXJCdWZmZXJlZFN0cnVjdHVyZXMoKQogICAgIHsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvUmVwYXRjaC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZXBhdGNoLmNwcAkocmV2aXNpb24gMjY0Mzcy
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZXBhdGNoLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMTQxLDcgKzE0MSwxMSBAQCBBTFdBWVNfSU5MSU5FIHN0YXRpYyB2b2lkIGZpcmVXYXRj
aHBvaW50CiB7CiAgICAgaWYgKHJlc3VsdC5zaG91bGRSZXNldFN0dWJBbmRGaXJlV2F0Y2hwb2lu
dHMoKSkgewogICAgICAgICByZXN1bHQuZmlyZVdhdGNocG9pbnRzKHZtKTsKLSAgICAgICAgc3R1
YkluZm8ucmVzZXQoY29kZUJsb2NrKTsKKworICAgICAgICB7CisgICAgICAgICAgICBHQ1NhZmVD
b25jdXJyZW50SlNMb2NrZXIgbG9ja2VyKGNvZGVCbG9jay0+bV9sb2NrLCB2bS5oZWFwKTsKKyAg
ICAgICAgICAgIHN0dWJJbmZvLnJlc2V0KGxvY2tlciwgY29kZUJsb2NrKTsKKyAgICAgICAgfQog
ICAgIH0KIH0KIApAQCAtMjA2LDcgKzIxMCw3IEBAIHN0YXRpYyBJbmxpbmVDYWNoZUFjdGlvbiB0
cnlDYWNoZUdldEJ5KEoKICAgICAgICAgICAgICAgICAgICAgYm9vbCBnZW5lcmF0ZWRDb2RlSW5s
aW5lID0gSW5saW5lQWNjZXNzOjpnZW5lcmF0ZUFycmF5TGVuZ3RoKHN0dWJJbmZvLCBqc0Nhc3Q8
SlNBcnJheSo+KGJhc2VDZWxsKSk7CiAgICAgICAgICAgICAgICAgICAgIGlmIChnZW5lcmF0ZWRD
b2RlSW5saW5lKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICBmdGxUaHVua0F3YXJlUmVwYXRj
aENhbGwoY29kZUJsb2NrLCBzdHViSW5mby5zbG93UGF0aENhbGxMb2NhdGlvbiwgYXBwcm9wcmlh
dGVPcHRpbWl6aW5nR2V0QnlGdW5jdGlvbihraW5kKSk7Ci0gICAgICAgICAgICAgICAgICAgICAg
ICBzdHViSW5mby5pbml0QXJyYXlMZW5ndGgoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHN0
dWJJbmZvLmluaXRBcnJheUxlbmd0aChsb2NrZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIFJldHJ5Q2FjaGVMYXRlcjsKICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgIH0KQEAgLTIxNyw3ICsyMjEsNyBAQCBzdGF0aWMgSW5saW5lQ2FjaGVBY3Rpb24gdHJ5
Q2FjaGVHZXRCeShKCiAgICAgICAgICAgICAgICAgICAgIGJvb2wgZ2VuZXJhdGVkQ29kZUlubGlu
ZSA9IElubGluZUFjY2Vzczo6Z2VuZXJhdGVTdHJpbmdMZW5ndGgoc3R1YkluZm8pOwogICAgICAg
ICAgICAgICAgICAgICBpZiAoZ2VuZXJhdGVkQ29kZUlubGluZSkgewogICAgICAgICAgICAgICAg
ICAgICAgICAgZnRsVGh1bmtBd2FyZVJlcGF0Y2hDYWxsKGNvZGVCbG9jaywgc3R1YkluZm8uc2xv
d1BhdGhDYWxsTG9jYXRpb24sIGFwcHJvcHJpYXRlT3B0aW1pemluZ0dldEJ5RnVuY3Rpb24oa2lu
ZCkpOwotICAgICAgICAgICAgICAgICAgICAgICAgc3R1YkluZm8uaW5pdFN0cmluZ0xlbmd0aCgp
OworICAgICAgICAgICAgICAgICAgICAgICAgc3R1YkluZm8uaW5pdFN0cmluZ0xlbmd0aChsb2Nr
ZXIpOwogICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFJldHJ5Q2FjaGVMYXRlcjsKICAg
ICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KQEAgLTI3Miw3ICsyNzYsNyBA
QCBzdGF0aWMgSW5saW5lQ2FjaGVBY3Rpb24gdHJ5Q2FjaGVHZXRCeShKCiAgICAgICAgICAgICAg
ICAgICAgIExPR19JQygoSUNFdmVudDo6R2V0QnlTZWxmUGF0Y2gsIHN0cnVjdHVyZS0+Y2xhc3NJ
bmZvKCksIElkZW50aWZpZXI6OmZyb21VaWQodm0sIHByb3BlcnR5TmFtZS51aWQoKSksIHNsb3Qu
c2xvdEJhc2UoKSA9PSBiYXNlVmFsdWUpKTsKICAgICAgICAgICAgICAgICAgICAgc3RydWN0dXJl
LT5zdGFydFdhdGNoaW5nUHJvcGVydHlGb3JSZXBsYWNlbWVudHModm0sIHNsb3QuY2FjaGVkT2Zm
c2V0KCkpOwogICAgICAgICAgICAgICAgICAgICBmdGxUaHVua0F3YXJlUmVwYXRjaENhbGwoY29k
ZUJsb2NrLCBzdHViSW5mby5zbG93UGF0aENhbGxMb2NhdGlvbiwgYXBwcm9wcmlhdGVPcHRpbWl6
aW5nR2V0QnlGdW5jdGlvbihraW5kKSk7Ci0gICAgICAgICAgICAgICAgICAgIHN0dWJJbmZvLmlu
aXRHZXRCeUlkU2VsZihjb2RlQmxvY2ssIHN0cnVjdHVyZSwgc2xvdC5jYWNoZWRPZmZzZXQoKSwg
cHJvcGVydHlOYW1lKTsKKyAgICAgICAgICAgICAgICAgICAgc3R1YkluZm8uaW5pdEdldEJ5SWRT
ZWxmKGxvY2tlciwgY29kZUJsb2NrLCBzdHJ1Y3R1cmUsIHNsb3QuY2FjaGVkT2Zmc2V0KCksIHBy
b3BlcnR5TmFtZSk7CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXRyeUNhY2hlTGF0ZXI7
CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQpAQCAtNTk2LDcgKzYwMCw3IEBAIHN0
YXRpYyBJbmxpbmVDYWNoZUFjdGlvbiB0cnlDYWNoZVB1dEJ5SUQKICAgICAgICAgICAgICAgICAg
ICAgaWYgKGdlbmVyYXRlZENvZGVJbmxpbmUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIExP
R19JQygoSUNFdmVudDo6UHV0QnlJZFNlbGZQYXRjaCwgb2xkU3RydWN0dXJlLT5jbGFzc0luZm8o
KSwgaWRlbnQsIHNsb3QuYmFzZSgpID09IGJhc2VWYWx1ZSkpOwogICAgICAgICAgICAgICAgICAg
ICAgICAgZnRsVGh1bmtBd2FyZVJlcGF0Y2hDYWxsKGNvZGVCbG9jaywgc3R1YkluZm8uc2xvd1Bh
dGhDYWxsTG9jYXRpb24sIGFwcHJvcHJpYXRlT3B0aW1pemluZ1B1dEJ5SWRGdW5jdGlvbihzbG90
LCBwdXRLaW5kKSk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBzdHViSW5mby5pbml0UHV0QnlJ
ZFJlcGxhY2UoY29kZUJsb2NrLCBvbGRTdHJ1Y3R1cmUsIHNsb3QuY2FjaGVkT2Zmc2V0KCksIHBy
b3BlcnR5TmFtZSk7CisgICAgICAgICAgICAgICAgICAgICAgICBzdHViSW5mby5pbml0UHV0QnlJ
ZFJlcGxhY2UobG9ja2VyLCBjb2RlQmxvY2ssIG9sZFN0cnVjdHVyZSwgc2xvdC5jYWNoZWRPZmZz
ZXQoKSwgcHJvcGVydHlOYW1lKTsKICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXRy
eUNhY2hlTGF0ZXI7CiAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9CkBA
IC04NzQsNyArODc4LDcgQEAgc3RhdGljIElubGluZUNhY2hlQWN0aW9uIHRyeUNhY2hlSW5CeUlE
KAogICAgICAgICAgICAgICAgICAgICBMT0dfSUMoKElDRXZlbnQ6OkluQnlJZFNlbGZQYXRjaCwg
c3RydWN0dXJlLT5jbGFzc0luZm8oKSwgaWRlbnQsIHNsb3Quc2xvdEJhc2UoKSA9PSBiYXNlKSk7
CiAgICAgICAgICAgICAgICAgICAgIHN0cnVjdHVyZS0+c3RhcnRXYXRjaGluZ1Byb3BlcnR5Rm9y
UmVwbGFjZW1lbnRzKHZtLCBzbG90LmNhY2hlZE9mZnNldCgpKTsKICAgICAgICAgICAgICAgICAg
ICAgZnRsVGh1bmtBd2FyZVJlcGF0Y2hDYWxsKGNvZGVCbG9jaywgc3R1YkluZm8uc2xvd1BhdGhD
YWxsTG9jYXRpb24sIG9wZXJhdGlvbkluQnlJZE9wdGltaXplKTsKLSAgICAgICAgICAgICAgICAg
ICAgc3R1YkluZm8uaW5pdEluQnlJZFNlbGYoY29kZUJsb2NrLCBzdHJ1Y3R1cmUsIHNsb3QuY2Fj
aGVkT2Zmc2V0KCksIHByb3BlcnR5TmFtZSk7CisgICAgICAgICAgICAgICAgICAgIHN0dWJJbmZv
LmluaXRJbkJ5SWRTZWxmKGxvY2tlciwgY29kZUJsb2NrLCBzdHJ1Y3R1cmUsIHNsb3QuY2FjaGVk
T2Zmc2V0KCksIHByb3BlcnR5TmFtZSk7CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBSZXRy
eUNhY2hlTGF0ZXI7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>