<?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>199786</bug_id>
          
          <creation_ts>2019-07-14 14:25:11 -0700</creation_ts>
          <short_desc>Concurrent GC should not rely on current phase to determine if it&apos;s safe to steal conn</short_desc>
          <delta_ts>2019-07-15 17:13: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>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="Tadeu Zagallo">tzagallo</reporter>
          <assigned_to name="Tadeu Zagallo">tzagallo</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1552761</commentid>
    <comment_count>0</comment_count>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2019-07-14 14:25:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/52505197&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552762</commentid>
    <comment_count>1</comment_count>
      <attachid>374094</attachid>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2019-07-14 14:29:15 -0700</bug_when>
    <thetext>Created attachment 374094
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552790</commentid>
    <comment_count>2</comment_count>
      <attachid>374094</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-07-14 23:39:04 -0700</bug_when>
    <thetext>Comment on attachment 374094
Patch

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

&gt; Source/JavaScriptCore/heap/Heap.cpp:2124
&gt; +    if ((m_lastServedTicket == m_lastGrantedTicket) &amp;&amp; !m_collectorThreadIsRunning) {

don’t you still need to check m_currentPhase? Can’t that also be driven by the mutator and we me in the middle of a collection?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552791</commentid>
    <comment_count>3</comment_count>
      <attachid>374094</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-07-14 23:42:03 -0700</bug_when>
    <thetext>Comment on attachment 374094
Patch

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

setting back to r? based on my questions

&gt; Source/JavaScriptCore/heap/Heap.cpp:261
&gt; +        m_heap.m_collectorThreadIsRunning = false;

Is this the correct place to set this to false? Why are we guaranteed to run poll() again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552793</commentid>
    <comment_count>4</comment_count>
      <attachid>374094</attachid>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2019-07-15 00:18:08 -0700</bug_when>
    <thetext>Comment on attachment 374094
Patch

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

&gt;&gt; Source/JavaScriptCore/heap/Heap.cpp:261
&gt;&gt; +        m_heap.m_collectorThreadIsRunning = false;
&gt; 
&gt; Is this the correct place to set this to false? Why are we guaranteed to run poll() again?

Yes, unless the thread stops. I missed that. I&apos;ll update the patch to implement threadIsStopping and set it to false there.

&gt;&gt; Source/JavaScriptCore/heap/Heap.cpp:2124
&gt;&gt; +    if ((m_lastServedTicket == m_lastGrantedTicket) &amp;&amp; !m_collectorThreadIsRunning) {
&gt; 
&gt; don’t you still need to check m_currentPhase? Can’t that also be driven by the mutator and we me in the middle of a collection?

This is called from the mutator thread, right? I think it&apos;s correct, but hypothetically, even if the mutator was collecting, all this would do is set the conn bit, which should already be set when the mutator is collecting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552795</commentid>
    <comment_count>5</comment_count>
      <attachid>374106</attachid>
    <who name="Tadeu Zagallo">tzagallo</who>
    <bug_when>2019-07-15 00:24:25 -0700</bug_when>
    <thetext>Created attachment 374106
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552804</commentid>
    <comment_count>6</comment_count>
      <attachid>374106</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-15 01:47:28 -0700</bug_when>
    <thetext>Comment on attachment 374106
Patch

Clearing flags on attachment: 374106

Committed r247426: &lt;https://trac.webkit.org/changeset/247426&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1552805</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-07-15 01:47:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1553038</commentid>
    <comment_count>8</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2019-07-15 17:13:24 -0700</bug_when>
    <thetext>Nice!!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374094</attachid>
            <date>2019-07-14 14:29:15 -0700</date>
            <delta_ts>2019-07-15 00:24:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199786-20190714222910.patch</filename>
            <type>text/plain</type>
            <size>4022</size>
            <attacher name="Tadeu Zagallo">tzagallo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3NDIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
ODQ1NjQxZTkxMGQxZTVjYWVhNjcyYmNkMDYxYjMzYTk0YmUxZjRmLi42ZmViNmQwZGJjZWMyMjY3
MWY1M2JhZDIyZDQxNTQ1ZTZjNDdlZTNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAxOS0wNy0xNCAgVGFkZXUgWmFnYWxsbyAgPHR6YWdhbGxvQGFwcGxlLmNv
bT4KKworICAgICAgICBDb25jdXJyZW50IEdDIHNob3VsZCBub3QgcmVseSBvbiBjdXJyZW50IHBo
YXNlIHRvIGRldGVybWluZSBpZiBpdCdzIHNhZmUgdG8gc3RlYWwgY29ubgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk5Nzg2CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS81MjUwNTE5Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbiByMjQ2NTA3LCB3ZSBmaXhlZCBhIHJhY2UgY29uZGl0aW9uIGluIHRo
ZSBjb25jdXJyZW50IEdDIHdoZXJlIHRoZSBtdXRhdG9yIG1pZ2h0IHN0ZWFsCisgICAgICAgIHRo
ZSBjb25uIGZyb20gdGhlIGNvbGxlY3RvciB0aHJlYWQgd2hpbGUgaXQgdHJhbnNpdGlvbnMgZnJv
bSB0aGUgRW5kIHBoYXNlIHRvIE5vdFJ1bm5pbmcuCisgICAgICAgIEhvd2V2ZXIsIHRoYXQgZml4
IHdhcyBub3Qgc3VmZmljaWVudC4gSW4gdGhlIGNhc2UgdGhhdCB0aGUgbXV0YXRvciBzdGVhbHMg
dGhlIGNvbm4sIGFuZCB0aGUKKyAgICAgICAgZXhlY3V0aW9uIGludGVybGVhdmVzIGxvbmcgZW5v
dWdoIGZvciB0aGUgbXV0YXRvciB0byBwcm9ncmVzcyB0byBhIGRpZmZlcmVudCBjb2xsZWN0aW9u
IHBoYXNlLAorICAgICAgICB0aGUgY29sbGVjdG9yIHdpbGwgcmVzdW1lIGluIGEgcGhhc2Ugb3Ro
ZXIgdGhhbiBOb3RSdW5uaW5nLCBhbmQgaGVuY2UgdGhlIGNoZWNrIGFkZGVkIHRvCisgICAgICAg
IE5vdFJ1bm5pbmcgd2lsbCBub3Qgc3VmZmljZS4gVG8gZml4IHRoYXQsIHdlIGFkZCBhIG5ldyB2
YXJpYWJsZSB0byB0cmFjayB3aGV0aGVyIHRoZSBjb2xsZWN0b3IKKyAgICAgICAgdGhyZWFkIGlz
IHJ1bm5pbmcgKG1fY29sbGVjdG9yVGhyZWFkSXNSdW5uaW5nKSBhbmQgdXNlIGl0IHRvIGRldGVy
bWluZSB3aGV0aGVyIGl0J3Mgc2FmZSB0bworICAgICAgICBzdGVhbCB0aGUgY29ubiwgcmF0aGVy
IHRoYW4gcmVseWluZyBvbiBtX2N1cnJlbnRQaGFzZS4KKworICAgICAgICAqIGhlYXAvSGVhcC5j
cHA6CisgICAgICAgIChKU0M6OkhlYXA6OnJ1bk5vdFJ1bm5pbmdQaGFzZSk6CisgICAgICAgIChK
U0M6OkhlYXA6OnJlcXVlc3RDb2xsZWN0aW9uKToKKyAgICAgICAgKiBoZWFwL0hlYXAuaDoKKwog
MjAxOS0wNy0xMiAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAg
ICAgICBBZGQgQVBJIHRvIGdldCBhbGwgdGhlIGRlcGVuZGVuY2llcyBvZiBhIGdpdmVuIEpTU2Ny
aXB0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwCmluZGV4IDdhY2FiY2U1OTQ0MzJjZjgy
NGNlYjkyMTdiMzY1NzJmYmM4ZWFlNmUuLjRhYWZiOTljNDRkOWQyYjBiZDdkMmU1MTNiYWViY2My
Yjk5NzA0NzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwCkBAIC0yNTQsOCArMjU0
LDExIEBAIHByb3RlY3RlZDoKICAgICAgICAgICAgIG1faGVhcC5ub3RpZnlUaHJlYWRTdG9wcGlu
Zyhsb2NrZXIpOwogICAgICAgICAgICAgcmV0dXJuIFBvbGxSZXN1bHQ6OlN0b3A7CiAgICAgICAg
IH0KLSAgICAgICAgaWYgKG1faGVhcC5zaG91bGRDb2xsZWN0SW5Db2xsZWN0b3JUaHJlYWQobG9j
a2VyKSkKKyAgICAgICAgaWYgKG1faGVhcC5zaG91bGRDb2xsZWN0SW5Db2xsZWN0b3JUaHJlYWQo
bG9ja2VyKSkgeworICAgICAgICAgICAgbV9oZWFwLm1fY29sbGVjdG9yVGhyZWFkSXNSdW5uaW5n
ID0gdHJ1ZTsKICAgICAgICAgICAgIHJldHVybiBQb2xsUmVzdWx0OjpXb3JrOworICAgICAgICB9
CisgICAgICAgIG1faGVhcC5tX2NvbGxlY3RvclRocmVhZElzUnVubmluZyA9IGZhbHNlOwogICAg
ICAgICByZXR1cm4gUG9sbFJlc3VsdDo6V2FpdDsKICAgICB9CiAgICAgCkBAIC0xMjQwLDkgKzEy
NDMsNiBAQCBORVZFUl9JTkxJTkUgYm9vbCBIZWFwOjpydW5Ob3RSdW5uaW5nUGhhc2UoR0NDb25k
dWN0b3IgY29ubikKICAgICAgICAgYXV0byBsb2NrZXIgPSBob2xkTG9jaygqbV90aHJlYWRMb2Nr
KTsKICAgICAgICAgaWYgKG1fcmVxdWVzdHMuaXNFbXB0eSgpKQogICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAvLyBDaGVjayBpZiB0aGUgbXV0YXRvciBoYXMgc3RvbGVuIHRoZSBj
b25uIHdoaWxlIHRoZSBjb2xsZWN0b3IgdHJhbnNpdGlvbmVkIGZyb20gRW5kIHRvIE5vdFJ1bm5p
bmcKLSAgICAgICAgaWYgKGNvbm4gPT0gR0NDb25kdWN0b3I6OkNvbGxlY3RvciAmJiAhIShtX3dv
cmxkU3RhdGUubG9hZCgpICYgbXV0YXRvckhhc0Nvbm5CaXQpKQotICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwogICAgIH0KICAgICAKICAgICByZXR1cm4gY2hhbmdlUGhhc2UoY29ubiwgQ29sbGVj
dG9yUGhhc2U6OkJlZ2luKTsKQEAgLTIxMjEsNyArMjEyMSw3IEBAIEhlYXA6OlRpY2tldCBIZWFw
OjpyZXF1ZXN0Q29sbGVjdGlvbihHQ1JlcXVlc3QgcmVxdWVzdCkKICAgICAvLyByaWdodCBub3cu
IFRoaXMgaXMgYW4gb3B0aW1pemF0aW9uIHRoYXQgcHJldmVudHMgdGhlIGNvbGxlY3RvciB0aHJl
YWQgZnJvbSBldmVyIHN0YXJ0aW5nIGluIG1vc3QKICAgICAvLyBjYXNlcy4KICAgICBBU1NFUlQo
bV9sYXN0U2VydmVkVGlja2V0IDw9IG1fbGFzdEdyYW50ZWRUaWNrZXQpOwotICAgIGlmICgobV9s
YXN0U2VydmVkVGlja2V0ID09IG1fbGFzdEdyYW50ZWRUaWNrZXQpICYmIChtX2N1cnJlbnRQaGFz
ZSA9PSBDb2xsZWN0b3JQaGFzZTo6Tm90UnVubmluZykpIHsKKyAgICBpZiAoKG1fbGFzdFNlcnZl
ZFRpY2tldCA9PSBtX2xhc3RHcmFudGVkVGlja2V0KSAmJiAhbV9jb2xsZWN0b3JUaHJlYWRJc1J1
bm5pbmcpIHsKICAgICAgICAgaWYgKGZhbHNlKQogICAgICAgICAgICAgZGF0YUxvZygiVGFraW5n
IHRoZSBjb25uLlxuIik7CiAgICAgICAgIG1fd29ybGRTdGF0ZS5leGNoYW5nZU9yKG11dGF0b3JI
YXNDb25uQml0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAu
aCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuaAppbmRleCAxODFjZThmODc1OWMx
YTk1NTgyNzhjMTJiMjZlMDYyMzcwODcyMzE3Li45NGYxYThiZGQzYjc5MDFhZDE0NzE5OGFlMDg2
NjQwMDliYTQ5ODJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFw
LmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5oCkBAIC03MTQsNiArNzE0
LDcgQEAgcHJpdmF0ZToKICAgICBDb2xsZWN0b3JQaGFzZSBtX2xhc3RQaGFzZSB7IENvbGxlY3Rv
clBoYXNlOjpOb3RSdW5uaW5nIH07CiAgICAgQ29sbGVjdG9yUGhhc2UgbV9jdXJyZW50UGhhc2Ug
eyBDb2xsZWN0b3JQaGFzZTo6Tm90UnVubmluZyB9OwogICAgIENvbGxlY3RvclBoYXNlIG1fbmV4
dFBoYXNlIHsgQ29sbGVjdG9yUGhhc2U6Ok5vdFJ1bm5pbmcgfTsKKyAgICBib29sIG1fY29sbGVj
dG9yVGhyZWFkSXNSdW5uaW5nIHsgZmFsc2UgfTsKICAgICBib29sIG1fdGhyZWFkU2hvdWxkU3Rv
cCB7IGZhbHNlIH07CiAgICAgYm9vbCBtX3RocmVhZElzU3RvcHBpbmcgeyBmYWxzZSB9OwogICAg
IGJvb2wgbV9tdXRhdG9yRGlkUnVuIHsgdHJ1ZSB9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>374106</attachid>
            <date>2019-07-15 00:24:25 -0700</date>
            <delta_ts>2019-07-15 01:47:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-199786-20190715082424.patch</filename>
            <type>text/plain</type>
            <size>4278</size>
            <attacher name="Tadeu Zagallo">tzagallo</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjQ3NDIyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
ODQ1NjQxZTkxMGQxZTVjYWVhNjcyYmNkMDYxYjMzYTk0YmUxZjRmLi4xYjQzN2YyMTViODZjODZm
YWJkODcyYzIxMTc0MDZjYTIwYjg5NzNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNSBAQAorMjAxOS0wNy0xNSAgVGFkZXUgWmFnYWxsbyAgPHR6YWdhbGxvQGFwcGxlLmNv
bT4KKworICAgICAgICBDb25jdXJyZW50IEdDIHNob3VsZCBub3QgcmVseSBvbiBjdXJyZW50IHBo
YXNlIHRvIGRldGVybWluZSBpZiBpdCdzIHNhZmUgdG8gc3RlYWwgY29ubgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk5Nzg2CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS81MjUwNTE5Nz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbiByMjQ2NTA3LCB3ZSBmaXhlZCBhIHJhY2UgY29uZGl0aW9uIGluIHRo
ZSBjb25jdXJyZW50IEdDIHdoZXJlIHRoZSBtdXRhdG9yIG1pZ2h0IHN0ZWFsCisgICAgICAgIHRo
ZSBjb25uIGZyb20gdGhlIGNvbGxlY3RvciB0aHJlYWQgd2hpbGUgaXQgdHJhbnNpdGlvbnMgZnJv
bSB0aGUgRW5kIHBoYXNlIHRvIE5vdFJ1bm5pbmcuCisgICAgICAgIEhvd2V2ZXIsIHRoYXQgZml4
IHdhcyBub3Qgc3VmZmljaWVudC4gSW4gdGhlIGNhc2UgdGhhdCB0aGUgbXV0YXRvciBzdGVhbHMg
dGhlIGNvbm4sIGFuZCB0aGUKKyAgICAgICAgZXhlY3V0aW9uIGludGVybGVhdmVzIGxvbmcgZW5v
dWdoIGZvciB0aGUgbXV0YXRvciB0byBwcm9ncmVzcyB0byBhIGRpZmZlcmVudCBjb2xsZWN0aW9u
IHBoYXNlLAorICAgICAgICB0aGUgY29sbGVjdG9yIHdpbGwgcmVzdW1lIGluIGEgcGhhc2Ugb3Ro
ZXIgdGhhbiBOb3RSdW5uaW5nLCBhbmQgaGVuY2UgdGhlIGNoZWNrIGFkZGVkIHRvCisgICAgICAg
IE5vdFJ1bm5pbmcgd2lsbCBub3Qgc3VmZmljZS4gVG8gZml4IHRoYXQsIHdlIGFkZCBhIG5ldyB2
YXJpYWJsZSB0byB0cmFjayB3aGV0aGVyIHRoZSBjb2xsZWN0b3IKKyAgICAgICAgdGhyZWFkIGlz
IHJ1bm5pbmcgKG1fY29sbGVjdG9yVGhyZWFkSXNSdW5uaW5nKSBhbmQgdXNlIGl0IHRvIGRldGVy
bWluZSB3aGV0aGVyIGl0J3Mgc2FmZSB0bworICAgICAgICBzdGVhbCB0aGUgY29ubiwgcmF0aGVy
IHRoYW4gcmVseWluZyBvbiBtX2N1cnJlbnRQaGFzZS4KKworICAgICAgICAqIGhlYXAvSGVhcC5j
cHA6CisgICAgICAgIChKU0M6OkhlYXA6OnJ1bk5vdFJ1bm5pbmdQaGFzZSk6CisgICAgICAgIChK
U0M6OkhlYXA6OnJlcXVlc3RDb2xsZWN0aW9uKToKKyAgICAgICAgKiBoZWFwL0hlYXAuaDoKKwog
MjAxOS0wNy0xMiAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAg
ICAgICBBZGQgQVBJIHRvIGdldCBhbGwgdGhlIGRlcGVuZGVuY2llcyBvZiBhIGdpdmVuIEpTU2Ny
aXB0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmNwcCBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwCmluZGV4IDdhY2FiY2U1OTQ0MzJjZjgy
NGNlYjkyMTdiMzY1NzJmYmM4ZWFlNmUuLmEwMWI1YTJiNGFlZmQzZTUyOTY5NzdhNWM4Mzg0MDQy
ZTVhMjk1NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3Bw
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0hlYXAuY3BwCkBAIC0yNTQsOCArMjU0
LDExIEBAIHByb3RlY3RlZDoKICAgICAgICAgICAgIG1faGVhcC5ub3RpZnlUaHJlYWRTdG9wcGlu
Zyhsb2NrZXIpOwogICAgICAgICAgICAgcmV0dXJuIFBvbGxSZXN1bHQ6OlN0b3A7CiAgICAgICAg
IH0KLSAgICAgICAgaWYgKG1faGVhcC5zaG91bGRDb2xsZWN0SW5Db2xsZWN0b3JUaHJlYWQobG9j
a2VyKSkKKyAgICAgICAgaWYgKG1faGVhcC5zaG91bGRDb2xsZWN0SW5Db2xsZWN0b3JUaHJlYWQo
bG9ja2VyKSkgeworICAgICAgICAgICAgbV9oZWFwLm1fY29sbGVjdG9yVGhyZWFkSXNSdW5uaW5n
ID0gdHJ1ZTsKICAgICAgICAgICAgIHJldHVybiBQb2xsUmVzdWx0OjpXb3JrOworICAgICAgICB9
CisgICAgICAgIG1faGVhcC5tX2NvbGxlY3RvclRocmVhZElzUnVubmluZyA9IGZhbHNlOwogICAg
ICAgICByZXR1cm4gUG9sbFJlc3VsdDo6V2FpdDsKICAgICB9CiAgICAgCkBAIC0yNzAsNiArMjcz
LDExIEBAIHByb3RlY3RlZDoKICAgICAgICAgVGhyZWFkOjpyZWdpc3RlckdDVGhyZWFkKEdDVGhy
ZWFkVHlwZTo6TWFpbik7CiAgICAgfQogCisgICAgdm9pZCB0aHJlYWRJc1N0b3BwaW5nKGNvbnN0
IEFic3RyYWN0TG9ja2VyJikgb3ZlcnJpZGUKKyAgICB7CisgICAgICAgIG1faGVhcC5tX2NvbGxl
Y3RvclRocmVhZElzUnVubmluZyA9IGZhbHNlOworICAgIH0KKwogcHJpdmF0ZToKICAgICBIZWFw
JiBtX2hlYXA7CiB9OwpAQCAtMTI0MCw5ICsxMjQ4LDYgQEAgTkVWRVJfSU5MSU5FIGJvb2wgSGVh
cDo6cnVuTm90UnVubmluZ1BoYXNlKEdDQ29uZHVjdG9yIGNvbm4pCiAgICAgICAgIGF1dG8gbG9j
a2VyID0gaG9sZExvY2soKm1fdGhyZWFkTG9jayk7CiAgICAgICAgIGlmIChtX3JlcXVlc3RzLmlz
RW1wdHkoKSkKICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgLy8gQ2hlY2sgaWYg
dGhlIG11dGF0b3IgaGFzIHN0b2xlbiB0aGUgY29ubiB3aGlsZSB0aGUgY29sbGVjdG9yIHRyYW5z
aXRpb25lZCBmcm9tIEVuZCB0byBOb3RSdW5uaW5nCi0gICAgICAgIGlmIChjb25uID09IEdDQ29u
ZHVjdG9yOjpDb2xsZWN0b3IgJiYgISEobV93b3JsZFN0YXRlLmxvYWQoKSAmIG11dGF0b3JIYXND
b25uQml0KSkKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICB9CiAgICAgCiAgICAgcmV0
dXJuIGNoYW5nZVBoYXNlKGNvbm4sIENvbGxlY3RvclBoYXNlOjpCZWdpbik7CkBAIC0yMTIxLDcg
KzIxMjYsNyBAQCBIZWFwOjpUaWNrZXQgSGVhcDo6cmVxdWVzdENvbGxlY3Rpb24oR0NSZXF1ZXN0
IHJlcXVlc3QpCiAgICAgLy8gcmlnaHQgbm93LiBUaGlzIGlzIGFuIG9wdGltaXphdGlvbiB0aGF0
IHByZXZlbnRzIHRoZSBjb2xsZWN0b3IgdGhyZWFkIGZyb20gZXZlciBzdGFydGluZyBpbiBtb3N0
CiAgICAgLy8gY2FzZXMuCiAgICAgQVNTRVJUKG1fbGFzdFNlcnZlZFRpY2tldCA8PSBtX2xhc3RH
cmFudGVkVGlja2V0KTsKLSAgICBpZiAoKG1fbGFzdFNlcnZlZFRpY2tldCA9PSBtX2xhc3RHcmFu
dGVkVGlja2V0KSAmJiAobV9jdXJyZW50UGhhc2UgPT0gQ29sbGVjdG9yUGhhc2U6Ok5vdFJ1bm5p
bmcpKSB7CisgICAgaWYgKChtX2xhc3RTZXJ2ZWRUaWNrZXQgPT0gbV9sYXN0R3JhbnRlZFRpY2tl
dCkgJiYgIW1fY29sbGVjdG9yVGhyZWFkSXNSdW5uaW5nKSB7CiAgICAgICAgIGlmIChmYWxzZSkK
ICAgICAgICAgICAgIGRhdGFMb2coIlRha2luZyB0aGUgY29ubi5cbiIpOwogICAgICAgICBtX3dv
cmxkU3RhdGUuZXhjaGFuZ2VPcihtdXRhdG9ySGFzQ29ubkJpdCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9IZWFwLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9IZWFwLmgKaW5kZXggMTgxY2U4Zjg3NTljMWE5NTU4Mjc4YzEyYjI2ZTA2MjM3MDg3MjMxNy4u
OTRmMWE4YmRkM2I3OTAxYWQxNDcxOThhZTA4NjY0MDA5YmE0OTgyZCAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvSGVhcC5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9oZWFwL0hlYXAuaApAQCAtNzE0LDYgKzcxNCw3IEBAIHByaXZhdGU6CiAgICAgQ29sbGVjdG9y
UGhhc2UgbV9sYXN0UGhhc2UgeyBDb2xsZWN0b3JQaGFzZTo6Tm90UnVubmluZyB9OwogICAgIENv
bGxlY3RvclBoYXNlIG1fY3VycmVudFBoYXNlIHsgQ29sbGVjdG9yUGhhc2U6Ok5vdFJ1bm5pbmcg
fTsKICAgICBDb2xsZWN0b3JQaGFzZSBtX25leHRQaGFzZSB7IENvbGxlY3RvclBoYXNlOjpOb3RS
dW5uaW5nIH07CisgICAgYm9vbCBtX2NvbGxlY3RvclRocmVhZElzUnVubmluZyB7IGZhbHNlIH07
CiAgICAgYm9vbCBtX3RocmVhZFNob3VsZFN0b3AgeyBmYWxzZSB9OwogICAgIGJvb2wgbV90aHJl
YWRJc1N0b3BwaW5nIHsgZmFsc2UgfTsKICAgICBib29sIG1fbXV0YXRvckRpZFJ1biB7IHRydWUg
fTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>