<?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>149811</bug_id>
          
          <creation_ts>2015-10-05 10:29:13 -0700</creation_ts>
          <short_desc>Iterator loops over key twice after delete</short_desc>
          <delta_ts>2015-10-12 20:24:39 -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>All</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>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Timon Orawski">timon</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>timon</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1130656</commentid>
    <comment_count>0</comment_count>
      <attachid>262446</attachid>
    <who name="Timon Orawski">timon</who>
    <bug_when>2015-10-05 10:29:13 -0700</bug_when>
    <thetext>Created attachment 262446
reproducible test case

The following code iterates twice over the key &quot;0&quot; in the object cols - despite it only existing in the object once.

&lt;html&gt;
&lt;head&gt;
&lt;script&gt;
var f = function() {
    &quot;use strict&quot;;
    var cols = {&quot;col&quot;:{&quot;title&quot;:&quot;&amp;nbsp;&quot;,&quot;type&quot;:&quot;sys&quot;,&quot;events&quot;:[],&quot;name&quot;:0,&quot;id&quot;:0,&quot;_i&quot;:0}};
    var len = 0;
    var remapcols = [&apos;col&apos;];
    for (var i = 0; i &lt; remapcols.length; i++) {
        cols[cols[remapcols[i]].name] = cols[remapcols[i]];
        delete cols[remapcols[i]];
    }
    var count = 0;
    console.group(&quot;object:&quot;)
    console.log(cols);
    console.groupEnd();
    console.group(&quot;This group should only contain one line&quot;);
    for (var col2 in cols) { console.log(&quot;&quot; + count++ +&quot;: Iterating over key: &quot; + col2); }
    console.groupEnd();
};
f();&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
Check console log, expected output is a single log entry &quot;0: Iterating over key: 0&quot;
&lt;/body&gt;
&lt;/html&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1131035</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-10-06 11:04:08 -0700</bug_when>
    <thetext>&lt;rdar://problem/22993722&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132228</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-10-11 06:11:54 -0700</bug_when>
    <thetext>Still investigating. But possible fix is,

setting indexedLength = 0; for non-generic JSPropertyNameEnumerator creation case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132234</commentid>
    <comment_count>3</comment_count>
      <attachid>262862</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-10-11 09:24:34 -0700</bug_when>
    <thetext>Created attachment 262862
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132235</commentid>
    <comment_count>4</comment_count>
      <attachid>262863</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-10-11 09:26:51 -0700</bug_when>
    <thetext>Created attachment 262863
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132416</commentid>
    <comment_count>5</comment_count>
      <attachid>262863</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-10-12 12:06:56 -0700</bug_when>
    <thetext>Comment on attachment 262863
Patch

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

r=me

&gt; Source/JavaScriptCore/runtime/JSPropertyNameEnumerator.h:128
&gt; +        // So disabling indexed property enumeration phase by setting |indexedLength| to 0.

disabling =&gt; disable</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132683</commentid>
    <comment_count>6</comment_count>
      <attachid>262863</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-10-12 20:23:23 -0700</bug_when>
    <thetext>Comment on attachment 262863
Patch

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

&gt;&gt; Source/JavaScriptCore/runtime/JSPropertyNameEnumerator.h:128
&gt;&gt; +        // So disabling indexed property enumeration phase by setting |indexedLength| to 0.
&gt; 
&gt; disabling =&gt; disable

Thanks. Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1132685</commentid>
    <comment_count>7</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2015-10-12 20:24:39 -0700</bug_when>
    <thetext>Committed r190923: &lt;http://trac.webkit.org/changeset/190923&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>262446</attachid>
            <date>2015-10-05 10:29:13 -0700</date>
            <delta_ts>2015-10-05 10:29:13 -0700</delta_ts>
            <desc>reproducible test case</desc>
            <filename>error.html</filename>
            <type>text/html</type>
            <size>753</size>
            <attacher name="Timon Orawski">timon</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8c2NyaXB0Pgp2YXIgZiA9IGZ1bmN0aW9uKCkgewogICAgInVzZSBzdHJp
Y3QiOwogICAgdmFyIGNvbHMgPSB7ImNvbCI6eyJ0aXRsZSI6IiZuYnNwOyIsInR5cGUiOiJzeXMi
LCJldmVudHMiOltdLCJuYW1lIjowLCJpZCI6MCwiX2kiOjB9fTsKICAgIHZhciBsZW4gPSAwOwog
ICAgdmFyIHJlbWFwY29scyA9IFsnY29sJ107CiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHJlbWFw
Y29scy5sZW5ndGg7IGkrKykgewogICAgICAgIGNvbHNbY29sc1tyZW1hcGNvbHNbaV1dLm5hbWVd
ID0gY29sc1tyZW1hcGNvbHNbaV1dOwogICAgICAgIGRlbGV0ZSBjb2xzW3JlbWFwY29sc1tpXV07
CiAgICB9CiAgICB2YXIgY291bnQgPSAwOwogICAgY29uc29sZS5ncm91cCgib2JqZWN0OiIpCiAg
ICBjb25zb2xlLmxvZyhjb2xzKTsKICAgIGNvbnNvbGUuZ3JvdXBFbmQoKTsKICAgIGNvbnNvbGUu
Z3JvdXAoIlRoaXMgZ3JvdXAgc2hvdWxkIG9ubHkgY29udGFpbiBvbmUgbGluZSIpOwogICAgZm9y
ICh2YXIgY29sMiBpbiBjb2xzKSB7IGNvbnNvbGUubG9nKCIiICsgY291bnQrKyArIjogSXRlcmF0
aW5nIG92ZXIga2V5OiAiICsgY29sMik7IH0KICAgIGNvbnNvbGUuZ3JvdXBFbmQoKTsKfTsKZigp
Ozwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5PgpDaGVjayBjb25zb2xlIGxvZywgZXhwZWN0ZWQgb3V0
cHV0IGlzIGEgc2luZ2xlIGxvZyBlbnRyeSAiMDogSXRlcmF0aW5nIG92ZXIga2V5OiAwIgo8L2Jv
ZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262862</attachid>
            <date>2015-10-11 09:24:34 -0700</date>
            <delta_ts>2015-10-11 09:26:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-149811-20151012012359.patch</filename>
            <type>text/plain</type>
            <size>4079</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwODQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
YjczMmYzMTQwZjg5MjMzN2RjYTI4NjQ2MDk4OTljNjAxNzVlNzA1Li41NTYzZTUyZjM3NjZmZmY5
ODcwMTMwODQ3NzdlMTczYjE4ZTAzZjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAxNS0xMC0xMSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBJdGVyYXRvciBsb29wcyBvdmVyIGtleSB0d2ljZSBhZnRlciBkZWxl
dGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0OTgx
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4g
YW4gb2JqZWN0IGlzIHRoZSBkaWN0aW9uYXJ5IG1vZGUsIEpTUHJvcGVydHlOYW1lRW51bWVyYXRv
ciBjb2xsZWN0cyBwcm9wZXJ0eSBuYW1lcyB0aHJvdWdoIGdlbmVyaWMgcHJvcGVydHkgbmFtZSBl
bnVtZXJhdGlvbiBgZ2V0UHJvcGVydHlOYW1lc2AuCisgICAgICAgIFRoZSByZXN1bHQgdmVjdG9y
IGNvbnRhaW5zIGluZGV4ZWQgcHJvcGVydHkgbmFtZXMuIEJ1dCBpbiB0aGlzIGNhc2UsIGBwdWJs
aWNMZW5ndGgoKWAgbWF5IG5vdCBiZSAwLgorICAgICAgICBTbyB3aXRob3V0IGRpc2FibGluZyBp
bmRleGVkIG5hbWVzIGVudW1lcmF0aW9uIHBoYXNlIGV4cGxpY2l0bHksIEpTUHJvcGVydHlOYW1l
RW51bWVyYXRvciBwcm9kdWNlcyBpbmRleGVkIHByb3BlcnR5IG5hbWVzIHR3aWNlLgorICAgICAg
ICBPbmUgaW4gaW5kZXhlZCBuYW1lIGVudW1lcmF0aW9uIHBoYXNlLCBhbmQgYW5vdGhlciBpbiBn
ZW5lcmljIHByb3BlcnR5IG5hbWUgZW51bWVyYXRpb24gcGhhc2UuCisgICAgICAgIFRoaXMgcGF0
Y2ggZGlzYWJsZXMgaW5kZXhlZCBuYW1lcyBlbnVtZXJhdGlvbiBieSBzZXR0aW5nIGBpbmRleGVk
TGVuZ3RoYCB0byAwIHdoZW4gY29sbGVjdGluZyBuYW1lcyB0aHJvdWdoIGdlbmVyaWMgcHJvcGVy
dHkgbmFtZSBlbnVtZXJhdGlvbi4KKworICAgICAgICAqIHJ1bnRpbWUvSlNQcm9wZXJ0eU5hbWVF
bnVtZXJhdG9yLmg6CisgICAgICAgIChKU0M6OnByb3BlcnR5TmFtZUVudW1lcmF0b3IpOgorICAg
ICAgICAqIHRlc3RzL3N0cmVzcy9wcm9wZXJ0eS1uYW1lLWVudW1lcmF0b3Itc2hvdWxkLW5vdC1s
b29rLWludG8taW5kZXhlZC12YWx1ZXMtd2hlbi1pdC1pcy1hLWRpY3Rpb25hcnkuanM6IEFkZGVk
LgorICAgICAgICAoc2hvdWxkQmUpOgorICAgICAgICAoY29sMi5vZi5SZWZsZWN0LmVudW1lcmF0
ZSk6CisKIDIwMTUtMTAtMTAgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJlZHVjZSBwb2ludGxlc3MgbWFsbG9jIHRyYWZmaWMgaW4gQ29kZUJsb2NrIGNvbnN0
cnVjdGlvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJv
cGVydHlOYW1lRW51bWVyYXRvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQ
cm9wZXJ0eU5hbWVFbnVtZXJhdG9yLmgKaW5kZXggYzllY2UxMWFiYmY1NTYzMzU3NGIxMDNhNjk4
OTNlNTM3MWNlNTBiNy4uM2M4NWQxNmIwNWMyMDhlNmU5Y2U0NWEzYWNiOGI2OTBiNjJlOTVjNiAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5hbWVF
bnVtZXJhdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0
eU5hbWVFbnVtZXJhdG9yLmgKQEAgLTEyMyw4ICsxMjMsMTEgQEAgaW5saW5lIEpTUHJvcGVydHlO
YW1lRW51bWVyYXRvciogcHJvcGVydHlOYW1lRW51bWVyYXRvcihFeGVjU3RhdGUqIGV4ZWMsIEpT
T2JqZWMKICAgICAgICAgbnVtYmVyU3RydWN0dXJlUHJvcGVydGllcyA9IHByb3BlcnR5TmFtZXMu
c2l6ZSgpOwogCiAgICAgICAgIGJhc2UtPm1ldGhvZFRhYmxlKHZtKS0+Z2V0R2VuZXJpY1Byb3Bl
cnR5TmFtZXMoYmFzZSwgZXhlYywgcHJvcGVydHlOYW1lcywgRW51bWVyYXRpb25Nb2RlKCkpOwot
ICAgIH0gZWxzZQorICAgIH0gZWxzZSB7CisgICAgICAgIC8vIEluIHRoaXMgY2FzZSwgaW5kZXhl
ZCBsZW5ndGggc2hvdWxkIGJlIGNvbnRhaW5lZCBpbiBhIGdlbmVyaWMgcHJvcGVydHkgdmVjdG9y
LgorICAgICAgICBpbmRleGVkTGVuZ3RoID0gMDsKICAgICAgICAgYmFzZS0+bWV0aG9kVGFibGUo
dm0pLT5nZXRQcm9wZXJ0eU5hbWVzKGJhc2UsIGV4ZWMsIHByb3BlcnR5TmFtZXMsIEVudW1lcmF0
aW9uTW9kZSgpKTsKKyAgICB9CiAKICAgICBBU1NFUlQocHJvcGVydHlOYW1lcy5zaXplKCkgPCBV
SU5UMzJfTUFYKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0
cmVzcy9wcm9wZXJ0eS1uYW1lLWVudW1lcmF0b3Itc2hvdWxkLW5vdC1sb29rLWludG8taW5kZXhl
ZC12YWx1ZXMtd2hlbi1pdC1pcy1hLWRpY3Rpb25hcnkuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvc3RyZXNzL3Byb3BlcnR5LW5hbWUtZW51bWVyYXRvci1zaG91bGQtbm90LWxvb2st
aW50by1pbmRleGVkLXZhbHVlcy13aGVuLWl0LWlzLWEtZGljdGlvbmFyeS5qcwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5iZTgwNTRhZWRiNDUyNzUxNzU4ZDY1ZDllYjMyYmFjNjc3MjZiODEzCi0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9wcm9wZXJ0eS1uYW1lLWVu
dW1lcmF0b3Itc2hvdWxkLW5vdC1sb29rLWludG8taW5kZXhlZC12YWx1ZXMtd2hlbi1pdC1pcy1h
LWRpY3Rpb25hcnkuanMKQEAgLTAsMCArMSwzOCBAQAorZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFs
LCBleHBlY3RlZCkgeworICAgIGlmIChhY3R1YWwgIT09IGV4cGVjdGVkKQorICAgICAgICB0aHJv
dyBuZXcgRXJyb3IoYGJhZCB2YWx1ZTogJHtTdHJpbmcoYWN0dWFsKX1gKTsKK30KKworKGZ1bmN0
aW9uKCkgeworICAgICJ1c2Ugc3RyaWN0IjsKKyAgICB2YXIgY29scyA9IHsiY29sIjp7InRpdGxl
IjoiJm5ic3A7IiwidHlwZSI6InN5cyIsImV2ZW50cyI6W10sIm5hbWUiOjAsImlkIjowLCJfaSI6
MH19OworICAgIHZhciBsZW4gPSAwOworICAgIHZhciByZW1hcGNvbHMgPSBbJ2NvbCddOworICAg
IGZvciAodmFyIGkgPSAwOyBpIDwgcmVtYXBjb2xzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgIGNv
bHNbY29sc1tyZW1hcGNvbHNbaV1dLm5hbWVdID0gY29sc1tyZW1hcGNvbHNbaV1dOworICAgICAg
ICBkZWxldGUgY29sc1tyZW1hcGNvbHNbaV1dOworICAgIH0KKyAgICB2YXIgY291bnQgPSAwOwor
ICAgIGZvciAodmFyIGNvbDIgaW4gY29scykgeworICAgICAgICBjb3VudCsrOworICAgICAgICBz
aG91bGRCZShjb2wyLCAnMCcpOworICAgIH0KKyAgICBzaG91bGRCZShjb3VudCwgMSk7Cit9KCkp
OworCisoZnVuY3Rpb24oKSB7CisgICAgInVzZSBzdHJpY3QiOworICAgIHZhciBjb2xzID0geyJj
b2wiOnsidGl0bGUiOiImbmJzcDsiLCJ0eXBlIjoic3lzIiwiZXZlbnRzIjpbXSwibmFtZSI6MCwi
aWQiOjAsIl9pIjowfX07CisgICAgdmFyIGxlbiA9IDA7CisgICAgdmFyIHJlbWFwY29scyA9IFsn
Y29sJ107CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCByZW1hcGNvbHMubGVuZ3RoOyBpKyspIHsK
KyAgICAgICAgY29sc1tjb2xzW3JlbWFwY29sc1tpXV0ubmFtZV0gPSBjb2xzW3JlbWFwY29sc1tp
XV07CisgICAgICAgIGRlbGV0ZSBjb2xzW3JlbWFwY29sc1tpXV07CisgICAgfQorICAgIHZhciBj
b3VudCA9IDA7CisgICAgZm9yICh2YXIgY29sMiBvZiBSZWZsZWN0LmVudW1lcmF0ZShjb2xzKSkg
eworICAgICAgICBjb3VudCsrOworICAgICAgICBzaG91bGRCZShjb2wyLCAnMCcpOworICAgIH0K
KyAgICBzaG91bGRCZShjb3VudCwgMSk7Cit9KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>262863</attachid>
            <date>2015-10-11 09:26:51 -0700</date>
            <delta_ts>2015-10-12 12:06:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-149811-20151012012616.patch</filename>
            <type>text/plain</type>
            <size>4160</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkwODQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
YjczMmYzMTQwZjg5MjMzN2RjYTI4NjQ2MDk4OTljNjAxNzVlNzA1Li41NTYzZTUyZjM3NjZmZmY5
ODcwMTMwODQ3NzdlMTczYjE4ZTAzZjRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMiBAQAorMjAxNS0xMC0xMSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBJdGVyYXRvciBsb29wcyBvdmVyIGtleSB0d2ljZSBhZnRlciBkZWxl
dGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0OTgx
MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4g
YW4gb2JqZWN0IGlzIHRoZSBkaWN0aW9uYXJ5IG1vZGUsIEpTUHJvcGVydHlOYW1lRW51bWVyYXRv
ciBjb2xsZWN0cyBwcm9wZXJ0eSBuYW1lcyB0aHJvdWdoIGdlbmVyaWMgcHJvcGVydHkgbmFtZSBl
bnVtZXJhdGlvbiBgZ2V0UHJvcGVydHlOYW1lc2AuCisgICAgICAgIFRoZSByZXN1bHQgdmVjdG9y
IGNvbnRhaW5zIGluZGV4ZWQgcHJvcGVydHkgbmFtZXMuIEJ1dCBpbiB0aGlzIGNhc2UsIGBwdWJs
aWNMZW5ndGgoKWAgbWF5IG5vdCBiZSAwLgorICAgICAgICBTbyB3aXRob3V0IGRpc2FibGluZyBp
bmRleGVkIG5hbWVzIGVudW1lcmF0aW9uIHBoYXNlIGV4cGxpY2l0bHksIEpTUHJvcGVydHlOYW1l
RW51bWVyYXRvciBwcm9kdWNlcyBpbmRleGVkIHByb3BlcnR5IG5hbWVzIHR3aWNlLgorICAgICAg
ICBPbmUgaW4gaW5kZXhlZCBuYW1lIGVudW1lcmF0aW9uIHBoYXNlLCBhbmQgYW5vdGhlciBpbiBn
ZW5lcmljIHByb3BlcnR5IG5hbWUgZW51bWVyYXRpb24gcGhhc2UuCisgICAgICAgIFRoaXMgcGF0
Y2ggZGlzYWJsZXMgaW5kZXhlZCBuYW1lcyBlbnVtZXJhdGlvbiBieSBzZXR0aW5nIGBpbmRleGVk
TGVuZ3RoYCB0byAwIHdoZW4gY29sbGVjdGluZyBuYW1lcyB0aHJvdWdoIGdlbmVyaWMgcHJvcGVy
dHkgbmFtZSBlbnVtZXJhdGlvbi4KKworICAgICAgICAqIHJ1bnRpbWUvSlNQcm9wZXJ0eU5hbWVF
bnVtZXJhdG9yLmg6CisgICAgICAgIChKU0M6OnByb3BlcnR5TmFtZUVudW1lcmF0b3IpOgorICAg
ICAgICAqIHRlc3RzL3N0cmVzcy9wcm9wZXJ0eS1uYW1lLWVudW1lcmF0b3Itc2hvdWxkLW5vdC1s
b29rLWludG8taW5kZXhlZC12YWx1ZXMtd2hlbi1pdC1pcy1hLWRpY3Rpb25hcnkuanM6IEFkZGVk
LgorICAgICAgICAoc2hvdWxkQmUpOgorICAgICAgICAoY29sMi5vZi5SZWZsZWN0LmVudW1lcmF0
ZSk6CisKIDIwMTUtMTAtMTAgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCiAg
ICAgICAgIFJlZHVjZSBwb2ludGxlc3MgbWFsbG9jIHRyYWZmaWMgaW4gQ29kZUJsb2NrIGNvbnN0
cnVjdGlvbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUHJv
cGVydHlOYW1lRW51bWVyYXRvci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQ
cm9wZXJ0eU5hbWVFbnVtZXJhdG9yLmgKaW5kZXggYzllY2UxMWFiYmY1NTYzMzU3NGIxMDNhNjk4
OTNlNTM3MWNlNTBiNy4uNzZjYWY5ZDc5ZGM4MzRkYzVkOGNkY2E0ZWE2YjNhNmRkNDk1NTMzYyAx
MDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0eU5hbWVF
bnVtZXJhdG9yLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNQcm9wZXJ0
eU5hbWVFbnVtZXJhdG9yLmgKQEAgLTEyMyw4ICsxMjMsMTIgQEAgaW5saW5lIEpTUHJvcGVydHlO
YW1lRW51bWVyYXRvciogcHJvcGVydHlOYW1lRW51bWVyYXRvcihFeGVjU3RhdGUqIGV4ZWMsIEpT
T2JqZWMKICAgICAgICAgbnVtYmVyU3RydWN0dXJlUHJvcGVydGllcyA9IHByb3BlcnR5TmFtZXMu
c2l6ZSgpOwogCiAgICAgICAgIGJhc2UtPm1ldGhvZFRhYmxlKHZtKS0+Z2V0R2VuZXJpY1Byb3Bl
cnR5TmFtZXMoYmFzZSwgZXhlYywgcHJvcGVydHlOYW1lcywgRW51bWVyYXRpb25Nb2RlKCkpOwot
ICAgIH0gZWxzZQorICAgIH0gZWxzZSB7CisgICAgICAgIC8vIEdlbmVyaWMgcHJvcGVydHkgbmFt
ZXMgdmVjdG9yIGNvbnRhaW5zIGFsbCBpbmRleGVkIHByb3BlcnR5IG5hbWVzLgorICAgICAgICAv
LyBTbyBkaXNhYmxpbmcgaW5kZXhlZCBwcm9wZXJ0eSBlbnVtZXJhdGlvbiBwaGFzZSBieSBzZXR0
aW5nIHxpbmRleGVkTGVuZ3RofCB0byAwLgorICAgICAgICBpbmRleGVkTGVuZ3RoID0gMDsKICAg
ICAgICAgYmFzZS0+bWV0aG9kVGFibGUodm0pLT5nZXRQcm9wZXJ0eU5hbWVzKGJhc2UsIGV4ZWMs
IHByb3BlcnR5TmFtZXMsIEVudW1lcmF0aW9uTW9kZSgpKTsKKyAgICB9CiAKICAgICBBU1NFUlQo
cHJvcGVydHlOYW1lcy5zaXplKCkgPCBVSU5UMzJfTUFYKTsKIApkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9wcm9wZXJ0eS1uYW1lLWVudW1lcmF0b3Itc2hv
dWxkLW5vdC1sb29rLWludG8taW5kZXhlZC12YWx1ZXMtd2hlbi1pdC1pcy1hLWRpY3Rpb25hcnku
anMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3Byb3BlcnR5LW5hbWUtZW51
bWVyYXRvci1zaG91bGQtbm90LWxvb2staW50by1pbmRleGVkLXZhbHVlcy13aGVuLWl0LWlzLWEt
ZGljdGlvbmFyeS5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZTgwNTRhZWRiNDUyNzUxNzU4ZDY1ZDllYjMyYmFj
Njc3MjZiODEzCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L3N0cmVzcy9wcm9wZXJ0eS1uYW1lLWVudW1lcmF0b3Itc2hvdWxkLW5vdC1sb29rLWludG8taW5k
ZXhlZC12YWx1ZXMtd2hlbi1pdC1pcy1hLWRpY3Rpb25hcnkuanMKQEAgLTAsMCArMSwzOCBAQAor
ZnVuY3Rpb24gc2hvdWxkQmUoYWN0dWFsLCBleHBlY3RlZCkgeworICAgIGlmIChhY3R1YWwgIT09
IGV4cGVjdGVkKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCB2YWx1ZTogJHtTdHJpbmco
YWN0dWFsKX1gKTsKK30KKworKGZ1bmN0aW9uKCkgeworICAgICJ1c2Ugc3RyaWN0IjsKKyAgICB2
YXIgY29scyA9IHsiY29sIjp7InRpdGxlIjoiJm5ic3A7IiwidHlwZSI6InN5cyIsImV2ZW50cyI6
W10sIm5hbWUiOjAsImlkIjowLCJfaSI6MH19OworICAgIHZhciBsZW4gPSAwOworICAgIHZhciBy
ZW1hcGNvbHMgPSBbJ2NvbCddOworICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcmVtYXBjb2xzLmxl
bmd0aDsgaSsrKSB7CisgICAgICAgIGNvbHNbY29sc1tyZW1hcGNvbHNbaV1dLm5hbWVdID0gY29s
c1tyZW1hcGNvbHNbaV1dOworICAgICAgICBkZWxldGUgY29sc1tyZW1hcGNvbHNbaV1dOworICAg
IH0KKyAgICB2YXIgY291bnQgPSAwOworICAgIGZvciAodmFyIGNvbDIgaW4gY29scykgeworICAg
ICAgICBjb3VudCsrOworICAgICAgICBzaG91bGRCZShjb2wyLCAnMCcpOworICAgIH0KKyAgICBz
aG91bGRCZShjb3VudCwgMSk7Cit9KCkpOworCisoZnVuY3Rpb24oKSB7CisgICAgInVzZSBzdHJp
Y3QiOworICAgIHZhciBjb2xzID0geyJjb2wiOnsidGl0bGUiOiImbmJzcDsiLCJ0eXBlIjoic3lz
IiwiZXZlbnRzIjpbXSwibmFtZSI6MCwiaWQiOjAsIl9pIjowfX07CisgICAgdmFyIGxlbiA9IDA7
CisgICAgdmFyIHJlbWFwY29scyA9IFsnY29sJ107CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBy
ZW1hcGNvbHMubGVuZ3RoOyBpKyspIHsKKyAgICAgICAgY29sc1tjb2xzW3JlbWFwY29sc1tpXV0u
bmFtZV0gPSBjb2xzW3JlbWFwY29sc1tpXV07CisgICAgICAgIGRlbGV0ZSBjb2xzW3JlbWFwY29s
c1tpXV07CisgICAgfQorICAgIHZhciBjb3VudCA9IDA7CisgICAgZm9yICh2YXIgY29sMiBvZiBS
ZWZsZWN0LmVudW1lcmF0ZShjb2xzKSkgeworICAgICAgICBjb3VudCsrOworICAgICAgICBzaG91
bGRCZShjb2wyLCAnMCcpOworICAgIH0KKyAgICBzaG91bGRCZShjb3VudCwgMSk7Cit9KCkpOwo=
</data>
<flag name="review"
          id="288051"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>