<?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>142651</bug_id>
          
          <creation_ts>2015-03-12 21:38:22 -0700</creation_ts>
          <short_desc>Introduce SymbolType into SpeculativeTypes</short_desc>
          <delta_ts>2015-05-14 10:39:11 -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>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>
          <dependson>140435</dependson>
          <blocked>145000</blocked>
    
    <blocked>145001</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>oliver</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1076844</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-03-12 21:38:22 -0700</bug_when>
    <thetext>Currently, Symbol is classified as SpecCellOther.
But this is too conservative analysis and there&apos;s room to optimize it.

Introducing SpecSymbol and analyzing this type in DFG/FTL brings faster Symbol comparison and lookups with it.
It will encourage some applications that uses Symbol as an unique key, like React.js.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1090092</commentid>
    <comment_count>1</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-04-29 11:47:10 -0700</bug_when>
    <thetext>CellOther is used for non-user-visible Cell objects.
So current status (categorizing Symbol into CellOther type) is not correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094796</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-05-14 07:30:55 -0700</bug_when>
    <thetext>Let&apos;s introduce SpecSymbol at first.
In the separated patch, I&apos;ll introduce SymbolUse.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094802</commentid>
    <comment_count>3</comment_count>
      <attachid>253121</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-05-14 08:27:06 -0700</bug_when>
    <thetext>Created attachment 253121
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094815</commentid>
    <comment_count>4</comment_count>
      <attachid>253121</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-05-14 09:02:49 -0700</bug_when>
    <thetext>Comment on attachment 253121
Patch

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

&gt; Source/JavaScriptCore/dfg/DFGConstantFoldingPhase.cpp:454
&gt; +                if (m_state.forNode(node-&gt;child1()).m_type &amp; ~(SpecFullNumber | SpecBoolean | SpecString | SpecSymbol))

ToPrimitive is used in string concatnation. It is tested in tests/stress/dfg-to-primitive-pass-symbol.js</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094837</commentid>
    <comment_count>5</comment_count>
      <attachid>253121</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-14 10:39:06 -0700</bug_when>
    <thetext>Comment on attachment 253121
Patch

Clearing flags on attachment: 253121

Committed r184340: &lt;http://trac.webkit.org/changeset/184340&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1094838</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-05-14 10:39:11 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>253121</attachid>
            <date>2015-05-14 08:27:06 -0700</date>
            <delta_ts>2015-05-14 10:39:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142651-20150515002542.patch</filename>
            <type>text/plain</type>
            <size>8343</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg0MzMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
OTkyZjgwZjIwZGU2YWQ4OGNkMTUyNmVjYTE5MjNhMmUwNGRmNjg5Li5hNjE4OGIwZWZkMDAwMWQ0
YjkwZmQwNTI2MmI2YWJjOTU0NzhiYWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwzNCBAQAorMjAxNS0wNS0xNCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBJbnRyb2R1Y2UgU3ltYm9sVHlwZSBpbnRvIFNwZWN1bGF0aXZlVHlw
ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MjY1
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEludHJv
ZHVjZSBTcGVjU3ltYm9sIHR5cGUgaW50byBzcGVjdWxhdGl2ZSB0eXBlcy4KKyAgICAgICAgUHJl
dmlvdXNseSBzeW1ib2wgdHlwZSBpcyBjYXRlZ29yaXplZCBpbnRvIFNwZWNDZWxsT3RoZXIuCisg
ICAgICAgIEJ1dCBTcGVjQ2VsbE90aGVyIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGZvciBz
dWNoIGNlbGxzLgorCisgICAgICAgIFRoaXMgcGF0Y2gganVzdCBpbnRyb2R1Y2VzIFNwZWNTeW1i
b2wuCisgICAgICAgIEl0IHJlcHJlc2VudHMgdGhlIHR5cGUgb2YgdGFyZ2V0IHZhbHVlIGlzIGRl
ZmluaXRlbHkgdGhlIHN5bWJvbCB0eXBlLgorICAgICAgICBJdCBpcyB0aGUgcGFydCBvZiBTcGVj
Q2VsbC4KKworICAgICAgICBJbiB0aGlzIHBhdGNoLCB3ZSBkbyBub3QgaW50cm9kdWNlIFN5bWJv
bFVzZSB0cmFja2luZy4KKyAgICAgICAgSXQgd2lsbCBiZSBhZGRlZCBpbiB0aGUgc2VwYXJhdGUg
cGF0Y2guCisKKyAgICAgICAgKiBieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHA6CisgICAgICAg
IChKU0M6OmR1bXBTcGVjdWxhdGlvbik6CisgICAgICAgIChKU0M6OnNwZWN1bGF0aW9uRnJvbVN0
cnVjdHVyZSk6CisgICAgICAgICogYnl0ZWNvZGUvU3BlY3VsYXRlZFR5cGUuaDoKKyAgICAgICAg
KEpTQzo6aXNTeW1ib2xTcGVjdWxhdGlvbik6CisgICAgICAgICogZGZnL0RGR0Fic3RyYWN0SW50
ZXJwcmV0ZXJJbmxpbmVzLmg6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RJbnRlcnByZXRl
cjxBYnN0cmFjdFN0YXRlVHlwZT46OmV4ZWN1dGVFZmZlY3RzKToKKyAgICAgICAgKiBkZmcvREZH
QWJzdHJhY3RWYWx1ZS5jcHA6CisgICAgICAgIChKU0M6OkRGRzo6QWJzdHJhY3RWYWx1ZTo6c2V0
VHlwZSk6CisgICAgICAgICogZGZnL0RGR0NvbnN0YW50Rm9sZGluZ1BoYXNlLmNwcDoKKyAgICAg
ICAgKEpTQzo6REZHOjpDb25zdGFudEZvbGRpbmdQaGFzZTo6Zm9sZENvbnN0YW50cyk6CisgICAg
ICAgICogdGVzdHMvc3RyZXNzL3R5cGVvZi1zeW1ib2wuanM6IEFkZGVkLgorCiAyMDE1LTA1LTEz
ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIFJFR1JFU1NJT04o
cjE4MDU5NSk6IHNhbWUtY2FsbGVlIHByb2ZpbGluZyBubyBsb25nZXIgd29ya3MKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3BlY3VsYXRlZFR5cGUuY3BwCmluZGV4IDY4
YTVkOTVjYzE5NTgwOWFlMzFlNTA2NmNjZTQxMzg2OGE4Nzc1ZWUuLjNkMjE2MWU3MjZhZTNlYjNm
MzRiN2JmNWNkNTgwM2RmZTViMjlmMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1NwZWN1bGF0ZWRUeXBlLmNwcApAQCAtMTU2LDYgKzE1NiwxMSBAQCB2b2lkIGR1
bXBTcGVjdWxhdGlvbihQcmludFN0cmVhbSYgb3V0LCBTcGVjdWxhdGVkVHlwZSB2YWx1ZSkKICAg
ICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICBpc1RvcCA9IGZhbHNlOwogICAgICAgICB9
CisKKyAgICAgICAgaWYgKHZhbHVlICYgU3BlY1N5bWJvbCkKKyAgICAgICAgICAgIG15T3V0LnBy
aW50KCJTeW1ib2wiKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgaXNUb3AgPSBmYWxzZTsK
ICAgICB9CiAgICAgCiAgICAgaWYgKHZhbHVlICYgU3BlY0ludDMyKQpAQCAtMzM3LDYgKzM0Miw4
IEBAIFNwZWN1bGF0ZWRUeXBlIHNwZWN1bGF0aW9uRnJvbVN0cnVjdHVyZShTdHJ1Y3R1cmUqIHN0
cnVjdHVyZSkKIHsKICAgICBpZiAoc3RydWN0dXJlLT50eXBlSW5mbygpLnR5cGUoKSA9PSBTdHJp
bmdUeXBlKQogICAgICAgICByZXR1cm4gU3BlY1N0cmluZzsKKyAgICBpZiAoc3RydWN0dXJlLT50
eXBlSW5mbygpLnR5cGUoKSA9PSBTeW1ib2xUeXBlKQorICAgICAgICByZXR1cm4gU3BlY1N5bWJv
bDsKICAgICByZXR1cm4gc3BlY3VsYXRpb25Gcm9tQ2xhc3NJbmZvKHN0cnVjdHVyZS0+Y2xhc3NJ
bmZvKCkpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUv
U3BlY3VsYXRlZFR5cGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxh
dGVkVHlwZS5oCmluZGV4IDI4ODIzMzc5ZGRkNDVjYmE0MDg1ODEzNzAwMGJmYTUzOTE4NzRlOTEu
LjY0YWQ4YzNhMjlmODk4NzBiZWZkODNmZTJlYTU5ZWZlZWQyOTNlZjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5oCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9TcGVjdWxhdGVkVHlwZS5oCkBAIC02MCw4ICs2MCw5
IEBACiBzdGF0aWMgY29uc3QgU3BlY3VsYXRlZFR5cGUgU3BlY1N0cmluZ0lkZW50ICAgICAgICA9
IDB4MDAwMTAwMDA7IC8vIEl0J3MgZGVmaW5pdGVseSBhIEpTU3RyaW5nLCBhbmQgaXQncyBhbiBp
ZGVudGlmaWVyLgogc3RhdGljIGNvbnN0IFNwZWN1bGF0ZWRUeXBlIFNwZWNTdHJpbmdWYXIgICAg
ICAgICAgPSAweDAwMDIwMDAwOyAvLyBJdCdzIGRlZmluaXRlbHkgYSBKU1N0cmluZywgYW5kIGl0
J3Mgbm90IGFuIGlkZW50aWZpZXIuCiBzdGF0aWMgY29uc3QgU3BlY3VsYXRlZFR5cGUgU3BlY1N0
cmluZyAgICAgICAgICAgICA9IDB4MDAwMzAwMDA7IC8vIEl0J3MgZGVmaW5pdGVseSBhIEpTU3Ry
aW5nLgotc3RhdGljIGNvbnN0IFNwZWN1bGF0ZWRUeXBlIFNwZWNDZWxsT3RoZXIgICAgICAgICAg
PSAweDAwMDQwMDAwOyAvLyBJdCdzIGRlZmluaXRlbHkgYSBKU0NlbGwgYnV0IG5vdCBhIHN1YmNs
YXNzIG9mIEpTT2JqZWN0IGFuZCBkZWZpbml0ZWx5IG5vdCBhIEpTU3RyaW5nLiBGSVhNRTogVGhp
cyBzaG91bGRuJ3QgYmUgcGFydCBvZiBoZWFwLXRvcCBvciBieXRlY29kZS10b3AuIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzMwNzgKLXN0YXRpYyBjb25zdCBTcGVj
dWxhdGVkVHlwZSBTcGVjQ2VsbCAgICAgICAgICAgICAgID0gMHgwMDA3ZmZmZjsgLy8gSXQncyBk
ZWZpbml0ZWx5IGEgSlNDZWxsLgorc3RhdGljIGNvbnN0IFNwZWN1bGF0ZWRUeXBlIFNwZWNTeW1i
b2wgICAgICAgICAgICAgPSAweDAwMDQwMDAwOyAvLyBJdCdzIGRlZmluaXRlbHkgYSBTeW1ib2wu
CitzdGF0aWMgY29uc3QgU3BlY3VsYXRlZFR5cGUgU3BlY0NlbGxPdGhlciAgICAgICAgICA9IDB4
MDAwODAwMDA7IC8vIEl0J3MgZGVmaW5pdGVseSBhIEpTQ2VsbCBidXQgbm90IGEgc3ViY2xhc3Mg
b2YgSlNPYmplY3QgYW5kIGRlZmluaXRlbHkgbm90IGEgSlNTdHJpbmcgb3IgYSBTeW1ib2wuIEZJ
WE1FOiBUaGlzIHNob3VsZG4ndCBiZSBwYXJ0IG9mIGhlYXAtdG9wIG9yIGJ5dGVjb2RlLXRvcC4g
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMzA3OAorc3RhdGljIGNv
bnN0IFNwZWN1bGF0ZWRUeXBlIFNwZWNDZWxsICAgICAgICAgICAgICAgPSAweDAwMGZmZmZmOyAv
LyBJdCdzIGRlZmluaXRlbHkgYSBKU0NlbGwuCiBzdGF0aWMgY29uc3QgU3BlY3VsYXRlZFR5cGUg
U3BlY0ludDMyICAgICAgICAgICAgICA9IDB4MDAyMDAwMDA7IC8vIEl0J3MgZGVmaW5pdGVseSBh
biBJbnQzMi4KIHN0YXRpYyBjb25zdCBTcGVjdWxhdGVkVHlwZSBTcGVjSW50NTIgICAgICAgICAg
ICAgID0gMHgwMDQwMDAwMDsgLy8gSXQncyBkZWZpbml0ZWx5IGFuIEludDUyIGFuZCB3ZSBpbnRl
bmQgaXQgdG8gdW5ib3ggaXQuCiBzdGF0aWMgY29uc3QgU3BlY3VsYXRlZFR5cGUgU3BlY01hY2hp
bmVJbnQgICAgICAgICA9IDB4MDA2MDAwMDA7IC8vIEl0J3Mgc29tZXRoaW5nIHRoYXQgd2UgY2Fu
IGRvIG1hY2hpbmUgaW50IGFyaXRobWV0aWMgb24uCkBAIC0xMzksNiArMTQwLDExIEBAIGlubGlu
ZSBib29sIGlzU3RyaW5nU3BlY3VsYXRpb24oU3BlY3VsYXRlZFR5cGUgdmFsdWUpCiAgICAgcmV0
dXJuICEhdmFsdWUgJiYgKHZhbHVlICYgU3BlY1N0cmluZykgPT0gdmFsdWU7CiB9CiAKK2lubGlu
ZSBib29sIGlzU3ltYm9sU3BlY3VsYXRpb24oU3BlY3VsYXRlZFR5cGUgdmFsdWUpCit7CisgICAg
cmV0dXJuIHZhbHVlID09IFNwZWNTeW1ib2w7Cit9CisKIGlubGluZSBib29sIGlzQXJyYXlTcGVj
dWxhdGlvbihTcGVjdWxhdGVkVHlwZSB2YWx1ZSkKIHsKICAgICByZXR1cm4gdmFsdWUgPT0gU3Bl
Y0FycmF5OwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0cmFj
dEludGVycHJldGVySW5saW5lcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdBYnN0
cmFjdEludGVycHJldGVySW5saW5lcy5oCmluZGV4IDc2MWNmNzgzYmZlOGMxMzYyOTM1ZDBlOGQ4
OWFmYWI1MGRmYWY3MTQuLjE3ODc3MDQ4NzIwOTUyN2MxZDZkZWJlZTQ1ODc2N2FkYjE5ZmUwZmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RJbnRlcnBy
ZXRlcklubGluZXMuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0
SW50ZXJwcmV0ZXJJbmxpbmVzLmgKQEAgLTEwNzAsNiArMTA3MCwxMSBAQAogICAgICAgICAgICAg
YnJlYWs7CiAgICAgICAgIH0KIAorICAgICAgICBpZiAoaXNTeW1ib2xTcGVjdWxhdGlvbihhYnN0
cmFjdENoaWxkLm1fdHlwZSkpIHsKKyAgICAgICAgICAgIHNldENvbnN0YW50KG5vZGUsICptX2dy
YXBoLmZyZWV6ZSh2bS0+c21hbGxTdHJpbmdzLnN5bWJvbFN0cmluZygpKSk7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgfQorCiAgICAgICAgIGZvck5vZGUobm9kZSkuc2V0VHlwZShtX2dy
YXBoLCBTcGVjU3RyaW5nSWRlbnQpOwogICAgICAgICBicmVhazsKICAgICB9CkBAIC0xNDIwLDcg
KzE0MjUsNyBAQAogICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgICAgCi0gICAg
ICAgIGlmICghKGZvck5vZGUobm9kZS0+Y2hpbGQxKCkpLm1fdHlwZSAmIH4oU3BlY0Z1bGxOdW1i
ZXIgfCBTcGVjQm9vbGVhbiB8IFNwZWNTdHJpbmcgfCBTcGVjQ2VsbE90aGVyKSkpIHsKKyAgICAg
ICAgaWYgKCEoZm9yTm9kZShub2RlLT5jaGlsZDEoKSkubV90eXBlICYgfihTcGVjRnVsbE51bWJl
ciB8IFNwZWNCb29sZWFuIHwgU3BlY1N0cmluZyB8IFNwZWNTeW1ib2wpKSkgewogICAgICAgICAg
ICAgbV9zdGF0ZS5zZXRGb3VuZENvbnN0YW50cyh0cnVlKTsKICAgICAgICAgICAgIGZvck5vZGUo
bm9kZSkgPSBmb3JOb2RlKG5vZGUtPmNoaWxkMSgpKTsKICAgICAgICAgICAgIGJyZWFrOwpAQCAt
MTQyOCw3ICsxNDMzLDcgQEAKICAgICAgICAgCiAgICAgICAgIGNsb2JiZXJXb3JsZChub2RlLT5v
cmlnaW4uc2VtYW50aWMsIGNsb2JiZXJMaW1pdCk7CiAgICAgICAgIAotICAgICAgICBmb3JOb2Rl
KG5vZGUpLnNldFR5cGUobV9ncmFwaCwgKFNwZWNIZWFwVG9wICYgflNwZWNDZWxsKSB8IFNwZWNT
dHJpbmcgfCBTcGVjQ2VsbE90aGVyKTsKKyAgICAgICAgZm9yTm9kZShub2RlKS5zZXRUeXBlKG1f
Z3JhcGgsIChTcGVjSGVhcFRvcCAmIH5TcGVjQ2VsbCkgfCBTcGVjU3RyaW5nIHwgU3BlY1N5bWJv
bCk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KICAgICAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0VmFsdWUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2RmZy9ERkdBYnN0cmFjdFZhbHVlLmNwcAppbmRleCBmYjI1YzVhMDdhOGMwM2I1ODI0
NzY1YTRhNTg1ZDJmZmRiYzY3ODUzLi4yMWViZGJhOTcxZjhkZTY4MzYwMmZjZDI1MTVkZDc2MDk0
ZmQ0ZmE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Fic3RyYWN0
VmFsdWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQWJzdHJhY3RWYWx1
ZS5jcHAKQEAgLTEyNCw2ICsxMjQsOCBAQCB2b2lkIEFic3RyYWN0VmFsdWU6OnNldFR5cGUoR3Jh
cGgmIGdyYXBoLCBTcGVjdWxhdGVkVHlwZSB0eXBlKQogICAgIGlmIChjZWxsVHlwZSkgewogICAg
ICAgICBpZiAoIShjZWxsVHlwZSAmIH5TcGVjU3RyaW5nKSkKICAgICAgICAgICAgIG1fc3RydWN0
dXJlID0gZ3JhcGgubV92bS5zdHJpbmdTdHJ1Y3R1cmUuZ2V0KCk7CisgICAgICAgIGVsc2UgaWYg
KGlzU3ltYm9sU3BlY3VsYXRpb24oY2VsbFR5cGUpKQorICAgICAgICAgICAgbV9zdHJ1Y3R1cmUg
PSBncmFwaC5tX3ZtLnN5bWJvbFN0cnVjdHVyZS5nZXQoKTsKICAgICAgICAgZWxzZQogICAgICAg
ICAgICAgbV9zdHJ1Y3R1cmUubWFrZVRvcCgpOwogICAgICAgICBtX2FycmF5TW9kZXMgPSBBTExf
QVJSQVlfTU9ERVM7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0Nv
bnN0YW50Rm9sZGluZ1BoYXNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ29u
c3RhbnRGb2xkaW5nUGhhc2UuY3BwCmluZGV4IDBlNTdhMDc2YTFhOWYxMTY5MWVlYzUwMDAwZTc5
MmYxZjQ0NTBlZGQuLmE2YmYwMDllNGUxYWM3MzgyNTA4NDc5Y2U3NzAwYmQ1MzM0NWU0NDMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ29uc3RhbnRGb2xkaW5nUGhh
c2UuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ29uc3RhbnRGb2xkaW5n
UGhhc2UuY3BwCkBAIC00NTEsNyArNDUxLDcgQEAgY2xhc3MgQ29uc3RhbnRGb2xkaW5nUGhhc2Ug
OiBwdWJsaWMgUGhhc2UgewogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICBjYXNlIFRvUHJp
bWl0aXZlOiB7Ci0gICAgICAgICAgICAgICAgaWYgKG1fc3RhdGUuZm9yTm9kZShub2RlLT5jaGls
ZDEoKSkubV90eXBlICYgfihTcGVjRnVsbE51bWJlciB8IFNwZWNCb29sZWFuIHwgU3BlY1N0cmlu
ZyB8IFNwZWNDZWxsT3RoZXIpKQorICAgICAgICAgICAgICAgIGlmIChtX3N0YXRlLmZvck5vZGUo
bm9kZS0+Y2hpbGQxKCkpLm1fdHlwZSAmIH4oU3BlY0Z1bGxOdW1iZXIgfCBTcGVjQm9vbGVhbiB8
IFNwZWNTdHJpbmcgfCBTcGVjU3ltYm9sKSkKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgbm9kZS0+Y29udmVydFRvSWRlbnRpdHko
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvdHlwZW9m
LXN5bWJvbC5qcyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvdHlwZW9mLXN5
bWJvbC5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi4wMmRiYjA1ZjNhMGVmMTBmM2YxOGQ4YjRlOGQ2MThjMjA1YTIx
ZjEzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVz
cy90eXBlb2Ytc3ltYm9sLmpzCkBAIC0wLDAgKzEsMTYgQEAKKyhmdW5jdGlvbiAoKSB7CisgICAg
ZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBlY3RlZCkgeworICAgICAgICBpZiAoYWN0dWFs
ICE9PSBleHBlY3RlZCkKKyAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgYmFkIHZhbHVlOiAk
e2FjdHVhbH1gKTsKKyAgICB9CisgICAgbm9JbmxpbmUoc2hvdWxkQmUpOworCisgICAgZnVuY3Rp
b24gdGFyZ2V0KCkgeworICAgICAgICB2YXIgc3ltYm9sID0gU3ltYm9sKCJDb2NvYSIpOworICAg
ICAgICBzaG91bGRCZSh0eXBlb2Ygc3ltYm9sLCAic3ltYm9sIik7CisgICAgfQorICAgIG5vSW5s
aW5lKHRhcmdldCk7CisKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IDEwMDAwOyArK2kpCisgICAg
ICAgIHRhcmdldCgpOworfSgpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>