<?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>143104</bug_id>
          
          <creation_ts>2015-03-26 10:10:28 -0700</creation_ts>
          <short_desc>REGRESSION: js/regress/inline-arguments-local-escape.html is flaky</short_desc>
          <delta_ts>2015-03-30 11:37:00 -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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenb</cc>
    
    <cc>mmirman</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>saam</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1080312</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-03-26 10:10:28 -0700</bug_when>
    <thetext>This test has started to flakily fail on multiple bots, presumably due to http://trac.webkit.org/changeset/181993

https://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=js%2Fregress%2Finline-arguments-local-escape.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080313</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-03-26 10:11:04 -0700</bug_when>
    <thetext>&lt;rdar://problem/20310708&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1080990</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-03-28 22:36:40 -0700</bug_when>
    <thetext>This test is still flakily failing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081163</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-03-30 08:30:59 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; This test is still flakily failing.

OK, looking at it now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081171</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-03-30 08:51:44 -0700</bug_when>
    <thetext>Turns out to be a pretty bad bug.  PreciseLocalClobberize&apos;s readTop() method is totally wrong for accesses to &quot;escaped&quot; arguments.  There are a handful of ways to fix this and I&apos;ll investigate.  Here&apos;s a version of the test that crashes every time:


function foo() {
    return arguments;
}

function bar(a, b, c, i) {
    var a = foo(b, c, 42);
    return a[i];
}

noInline(bar);

var expected = [2, 3, 42];
for (var i = 0; i &lt; 10000; ++i) {
    var result = bar(1, 2, 3, i % 3);
    if (result != expected[i % 3])
        throw &quot;Error: bad result: &quot; + result;
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081172</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-03-30 08:57:56 -0700</bug_when>
    <thetext>Same bug, involving ForwardVarargs:

function foo() {
    return arguments;
}

function baz(a, b, c) {
    return a + b + c;
}

function bar(a, b, c) {
    var args = foo(b, c, 42);
    return baz.apply(void 0, args);
}

noInline(bar);

for (var i = 0; i &lt; 10000; ++i) {
    var result = bar(1, 2, 3);
    if (result != 47)
        throw &quot;Error: bad result: &quot; + result;
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081191</commentid>
    <comment_count>6</comment_count>
      <attachid>249738</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-03-30 09:36:17 -0700</bug_when>
    <thetext>Created attachment 249738
hopefully the patch

Not yet ready for review.  I&apos;m still running tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081201</commentid>
    <comment_count>7</comment_count>
      <attachid>249738</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-03-30 09:58:40 -0700</bug_when>
    <thetext>Comment on attachment 249738
hopefully the patch

Looks like it works!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081227</commentid>
    <comment_count>8</comment_count>
      <attachid>249738</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2015-03-30 10:50:44 -0700</bug_when>
    <thetext>Comment on attachment 249738
hopefully the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081252</commentid>
    <comment_count>9</comment_count>
      <attachid>249738</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-30 11:36:55 -0700</bug_when>
    <thetext>Comment on attachment 249738
hopefully the patch

Clearing flags on attachment: 249738

Committed r182148: &lt;http://trac.webkit.org/changeset/182148&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1081253</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-03-30 11:37:00 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>249738</attachid>
            <date>2015-03-30 09:36:17 -0700</date>
            <delta_ts>2015-03-30 11:36:55 -0700</delta_ts>
            <desc>hopefully the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>13150</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTgyMTQyKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ0IEBA
CisyMDE1LTAzLTMwICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
UkVHUkVTU0lPTjoganMvcmVncmVzcy9pbmxpbmUtYXJndW1lbnRzLWxvY2FsLWVzY2FwZS5odG1s
IGlzIGZsYWt5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNDMxMDQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAg
CisgICAgICAgIENyZWF0ZWQgYSB0ZXN0IHRoYXQgaXMgYSAxMDAlIHJlcHJvIG9mIHRoZSBmbGFr
eSBmYWlsdXJlLiBUaGlzIHRlc3QgaXMgY2FsbGVkCisgICAgICAgIGdldC1teS1hcmd1bWVudC1i
eS12YWwtZm9yLWlubGluZWQtZXNjYXBlZC1hcmd1bWVudHMuanMuIEl0IGZhaWxzIGFsbCBvZiB0
aGUgdGltZSBiZWNhdXNlIGl0CisgICAgICAgIGFsd2F5cyBjYXVzZXMgdGhlIGNvbXBpbGVyIHRv
IGVtaXQgYSBHZXRNeUFyZ3VtZW50QnlWYWwgb2YgdGhlIGFyZ3VtZW50cyBvYmplY3QgcmV0dXJu
ZWQgYnkKKyAgICAgICAgdGhlIGlubGluZWQgZnVuY3Rpb24uIE90aGVyIHRoYW4gdGhhdCwgaXQn
cyB0aGUgc2FtZSBhcyBpbmxpbmUtYXJndW1lbnRzLWxvY2FsLWVzY2FwZS4KKyAgICAgICAgCisg
ICAgICAgIEFsc28gY3JlYXRlZCB0aHJlZSBtb3JlIHRlc3RzIGZvciB0aHJlZSBzaW1pbGFyLCBi
dXQgbm90IGlkZW50aWNhbCwgZmFpbHVyZXMuCisgICAgICAgIAorICAgICAgICBUaGVuIGZpeGVk
IHRoZSBidWc6IFByZWNpc2VMb2NhbENsb2JiZXJpemUgd2FzIGFzc3VtaW5nIHRoYXQgaWYgd2Ug
cmVhZChTdGFjaykgdGhlbiB3ZSBhcmUKKyAgICAgICAgb25seSByZWFkaW5nIHRob3NlIHBhcnRz
IG9mIHRoZSBzdGFjayB0aGF0IGFyZSByZWxldmFudCB0byB0aGUgY3VycmVudCBzZW1hbnRpYyBj
b2RlIG9yaWdpbi4KKyAgICAgICAgVGhhdCdzIGZhbHNlIGFmdGVyIEFyZ3VtZW50c0VsaW1pbmF0
aW9uUGhhc2UgLSB3ZSBtaWdodCBoYXZlIG9wZXJhdGlvbnMgb24gcGhhbnRvbSBhcmd1bWVudHMs
CisgICAgICAgIGxpa2UgR2V0TXlBcmd1bWVudEJ5VmFsLCBGb3J3YXJkVmFyYXJncywgQ2FsbEZv
cndhcmRWYXJhcmdzLCBhbmQgQ29uc3RydWN0Rm9yd2FyZFZhcmFyZ3MsIHRoYXQKKyAgICAgICAg
cmVhZCBwYXJ0cyBvZiB0aGUgc3RhY2sgYXNzb2NpYXRlZCB3aXRoIHRoZSBpbmxpbmUgY2FsbCBm
cmFtZSBmb3IgdGhlIHBoYW50b20gYXJndW1lbnRzLiBUaGlzCisgICAgICAgIG1heSBub3QgYmUg
c3Vic3VtZWQgYnkgdGhlIGN1cnJlbnQgc2VtYW50aWMgb3JpZ2luJ3Mgc3RhY2sgYXJlYSBpbiBj
YXNlcyB0aGF0IHRoZSBhcmd1bWVudHMKKyAgICAgICAgd2VyZSBhbGxvd2VkIHRvICJsb2NhbGx5
IiBlc2NhcGUuCisgICAgICAgIAorICAgICAgICBUaGUgaGlnaGVyLW9yZGVyIGxlc3NvbiBoZXJl
IGlzIHRoYXQgaW4gREZHIFNTQSBJUiwgdGhlIGN1cnJlbnQgc2VtYW50aWMgb3JpZ2luJ3Mgc3Rh
Y2sgYXJlYQorICAgICAgICBpcyBub3QgcmVhbGx5IGEgbWVhbmluZ2Z1bCBjb25jZXB0IGFueW1v
cmUuIEl0IGlzIG9ubHkgbWVhbmluZ2Z1bCBmb3Igbm9kZXMgdGhhdCB3aWxsIHJlYWQKKyAgICAg
ICAgdGhlIHN0YWNrIGR1ZSB0byBmdW5jdGlvbi5hcmd1bWVudHMsIGJ1dCB0aGVyZSBhcmUgYSBi
dW5jaCBvZiBvdGhlciB3YXlzIHRoYXQgd2UgY291bGQgYWxzbworICAgICAgICByZWFkIHRoZSBz
dGFjayBhbmQgdGhvc2Ugb3BlcmF0aW9ucyBtYXkgcmVhZCBhbnkgc3RhY2sgc2xvdC4gSSBiZWxp
ZXZlIHRoYXQgdGhpcyBjaGFuZ2UgbWFrZXMKKyAgICAgICAgUHJlY2lzZUxvY2FsQ2xvYmJlcml6
ZSByaWdodDogaXQgd2lsbCByZWZpbmUgYSByZWFkKFN0YWNrKSBmcm9tIENsb2JiZXJpemUgY29y
cmVjdGx5IGJ5IGNhc2luZworICAgICAgICBvbiBub2RlIHR5cGUuIEluIGZ1dHVyZSwgaWYgd2Ug
YWRkIGEgcmVhZChTdGFjaykgdG8gQ2xvYmJlcml6ZSwgd2UnbGwgaGF2ZSB0byBtYWtlIHN1cmUg
dGhhdAorICAgICAgICByZWFkVG9wKCkgaW4gUHJlY2lzZUxvY2FsQ2xvYmJlcml6ZSBkb2VzIHRo
ZSByaWdodCB0aGluZy4KKworICAgICAgICAqIGRmZy9ERkdDbG9iYmVyaXplLmg6CisgICAgICAg
IChKU0M6OkRGRzo6Y2xvYmJlcml6ZSk6CisgICAgICAgICogZGZnL0RGR1ByZWNpc2VMb2NhbENs
b2JiZXJpemUuaDoKKyAgICAgICAgKEpTQzo6REZHOjpQcmVjaXNlTG9jYWxDbG9iYmVyaXplQWRh
cHRvcjo6cmVhZFRvcCk6CisgICAgICAgICogZGZnL0RGR1B1dFN0YWNrU2lua2luZ1BoYXNlLmNw
cDoKKyAgICAgICAgKiB0ZXN0cy9zdHJlc3MvY2FsbC1mb3J3YXJkLXZhcmFyZ3MtZm9yLWlubGlu
ZWQtZXNjYXBlZC1hcmd1bWVudHMuanM6IEFkZGVkLgorICAgICAgICAqIHRlc3RzL3N0cmVzcy9j
b25zdHJ1Y3QtZm9yd2FyZC12YXJhcmdzLWZvci1pbmxpbmVkLWVzY2FwZWQtYXJndW1lbnRzLmpz
OiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9zdHJlc3MvZm9yd2FyZC12YXJhcmdzLWZvci1pbmxp
bmVkLWVzY2FwZWQtYXJndW1lbnRzLmpzOiBBZGRlZC4KKyAgICAgICAgKiB0ZXN0cy9zdHJlc3Mv
Z2V0LW15LWFyZ3VtZW50LWJ5LXZhbC1mb3ItaW5saW5lZC1lc2NhcGVkLWFyZ3VtZW50cy5qczog
QWRkZWQuCisgICAgICAgICogdGVzdHMvc3RyZXNzL3JlYWwtZm9yd2FyZC12YXJhcmdzLWZvci1p
bmxpbmVkLWVzY2FwZWQtYXJndW1lbnRzLmpzOiBBZGRlZC4KKwogMjAxNS0wMy0zMCAgQmVuamFt
aW4gUG91bGFpbiAgPGJlbmphbWluQHdlYmtpdC5vcmc+CiAKICAgICAgICAgU3RhcnQgdGhlIGZl
YXR1cmVzLmpzb24gZmlsZXMKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xv
YmJlcml6ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQ2xv
YmJlcml6ZS5oCShyZXZpc2lvbiAxODIxNDApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0Nsb2JiZXJpemUuaAkod29ya2luZyBjb3B5KQpAQCAtNzYsNiArNzYsOSBAQCB2b2lkIGNs
b2JiZXJpemUoR3JhcGgmIGdyYXBoLCBOb2RlKiBub2RlCiAgICAgLy8gICBjYW4gdXNlIGl0IGZv
ciBJUiBkdW1wcy4gTm8gcHJvbWlzZXMgb24gd2hldGhlciB0aGUgYW5zd2VycyBhcmUgc291bmQK
ICAgICAvLyAgIHByaW9yIHRvIHR5cGUgaW5mZXJlbmNlIC0gdGhvdWdoIHRoZXkgcHJvYmFibHkg
Y291bGQgYmUgaWYgd2UgZGlkIHNvbWUKICAgICAvLyAgIHNtYWxsIGhhY2tpbmcuCisgICAgLy8K
KyAgICAvLyAtIElmIHlvdSBkbyByZWFkKFN0YWNrKSBvciByZWFkKFdvcmxkKSwgdGhlbiBtYWtl
IHN1cmUgdGhhdCByZWFkVG9wKCkgaW4KKyAgICAvLyAgIFByZWNpc2VMb2NhbENsb2JiZXJpemUg
aXMgY29ycmVjdC4KICAgICAKICAgICAvLyBXaGlsZSByZWFkKCkgYW5kIHdyaXRlKCkgYXJlIGZh
aXJseSBzZWxmLWV4cGxhbmF0b3J5IC0gdGhleSB0cmFjayB3aGF0IHNvcnRzIG9mIHRoaW5ncyB0
aGUKICAgICAvLyBub2RlIG1heSByZWFkIG9yIHdyaXRlIC0gdGhlIGRlZigpIGZ1bmN0b3IgaXMg
bW9yZSB0cmlja3kuIEl0IHRlbGxzIHlvdSB0aGUgaGVhcCBsb2NhdGlvbnMKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlY2lzZUxvY2FsQ2xvYmJlcml6ZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUHJlY2lzZUxvY2FsQ2xvYmJlcml6
ZS5oCShyZXZpc2lvbiAxODIxNDApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1By
ZWNpc2VMb2NhbENsb2JiZXJpemUuaAkod29ya2luZyBjb3B5KQpAQCAtMTA3LDI2ICsxMDcsNDcg
QEAgcHJpdmF0ZToKICAgICAKICAgICB2b2lkIHJlYWRUb3AoKQogICAgIHsKLSAgICAgICAgLy8g
QWxsIG9mIHRoZSBvdXRlcm1vc3QgYXJndW1lbnRzLCBleGNlcHQgdGhpcywgYXJlIGRlZmluaXRl
bHkgcmVhZC4KLSAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gbV9ncmFwaC5tX2NvZGVCbG9jay0+
bnVtUGFyYW1ldGVycygpOyBpLS0gPiAxOykKLSAgICAgICAgICAgIG1fcmVhZCh2aXJ0dWFsUmVn
aXN0ZXJGb3JBcmd1bWVudChpKSk7Ci0gICAgICAgIAotICAgICAgICAvLyBUaGUgc3RhY2sgaGVh
ZGVyIGlzIHJlYWQuCi0gICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBKU1N0YWNrOjpU
aGlzQXJndW1lbnQ7ICsraSkKLSAgICAgICAgICAgIG1fcmVhZChWaXJ0dWFsUmVnaXN0ZXIoaSkp
OwotICAgICAgICAKLSAgICAgICAgLy8gUmVhZCBhbGwgb2YgdGhlIGlubGluZSBhcmd1bWVudHMg
YW5kIGNhbGwgZnJhbWUgaGVhZGVycyB0aGF0IHdlIGRpZG4ndCBhbHJlYWR5IGNhcHR1cmUuCi0g
ICAgICAgIGZvciAoSW5saW5lQ2FsbEZyYW1lKiBpbmxpbmVDYWxsRnJhbWUgPSBtX25vZGUtPm9y
aWdpbi5zZW1hbnRpYy5pbmxpbmVDYWxsRnJhbWU7IGlubGluZUNhbGxGcmFtZTsgaW5saW5lQ2Fs
bEZyYW1lID0gaW5saW5lQ2FsbEZyYW1lLT5jYWxsZXIuaW5saW5lQ2FsbEZyYW1lKSB7CisgICAg
ICAgIHN3aXRjaCAobV9ub2RlLT5vcCgpKSB7CisgICAgICAgIGNhc2UgR2V0TXlBcmd1bWVudEJ5
VmFsOgorICAgICAgICBjYXNlIEZvcndhcmRWYXJhcmdzOgorICAgICAgICBjYXNlIENhbGxGb3J3
YXJkVmFyYXJnczoKKyAgICAgICAgY2FzZSBDb25zdHJ1Y3RGb3J3YXJkVmFyYXJnczogeworICAg
ICAgICAgICAgSW5saW5lQ2FsbEZyYW1lKiBpbmxpbmVDYWxsRnJhbWUgPSBtX25vZGUtPmNoaWxk
MSgpLT5vcmlnaW4uc2VtYW50aWMuaW5saW5lQ2FsbEZyYW1lOworICAgICAgICAgICAgaWYgKCFp
bmxpbmVDYWxsRnJhbWUpIHsKKyAgICAgICAgICAgICAgICAvLyBSZWFkIHRoZSBvdXRlcm1vc3Qg
YXJndW1lbnRzIGFuZCBhcmd1bWVudCBjb3VudC4KKyAgICAgICAgICAgICAgICBmb3IgKHVuc2ln
bmVkIGkgPSBtX2dyYXBoLm1fY29kZUJsb2NrLT5udW1QYXJhbWV0ZXJzKCk7IGktLSA+IDE7KQor
ICAgICAgICAgICAgICAgICAgICBtX3JlYWQodmlydHVhbFJlZ2lzdGVyRm9yQXJndW1lbnQoaSkp
OworICAgICAgICAgICAgICAgIG1fcmVhZChWaXJ0dWFsUmVnaXN0ZXIoSlNTdGFjazo6QXJndW1l
bnRDb3VudCkpOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQorICAgICAg
ICAgICAgCiAgICAgICAgICAgICBmb3IgKHVuc2lnbmVkIGkgPSBpbmxpbmVDYWxsRnJhbWUtPmFy
Z3VtZW50cy5zaXplKCk7IGktLSA+IDE7KQogICAgICAgICAgICAgICAgIG1fcmVhZChWaXJ0dWFs
UmVnaXN0ZXIoaW5saW5lQ2FsbEZyYW1lLT5zdGFja09mZnNldCArIHZpcnR1YWxSZWdpc3RlckZv
ckFyZ3VtZW50KGkpLm9mZnNldCgpKSk7Ci0gICAgICAgICAgICBpZiAoaW5saW5lQ2FsbEZyYW1l
LT5pc0Nsb3N1cmVDYWxsKQotICAgICAgICAgICAgICAgIG1fcmVhZChWaXJ0dWFsUmVnaXN0ZXIo
aW5saW5lQ2FsbEZyYW1lLT5zdGFja09mZnNldCArIEpTU3RhY2s6OkNhbGxlZSkpOwogICAgICAg
ICAgICAgaWYgKGlubGluZUNhbGxGcmFtZS0+aXNWYXJhcmdzKCkpCiAgICAgICAgICAgICAgICAg
bV9yZWFkKFZpcnR1YWxSZWdpc3RlcihpbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0ICsgSlNT
dGFjazo6QXJndW1lbnRDb3VudCkpOworICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KLQot
ICAgICAgICAvLyBOb3RlIHRoYXQgd2UgZG9uJ3QgbmVlZCB0byBkbyBhbnl0aGluZyBzcGVjaWFs
IGZvciBDYWxsRm9yd2FyZFZhcmFyZ3MsIHNpbmNlIGl0IHJlYWRzCi0gICAgICAgIC8vIG91ciBh
cmd1bWVudHMgdGhlIHNhbWUgd2F5IHRoYXQgYW55IGVmZmVjdGZ1bCB0aGluZyBtaWdodC4KKyAg
ICAgICAgICAgIAorICAgICAgICBkZWZhdWx0OiB7CisgICAgICAgICAgICAvLyBBbGwgb2YgdGhl
IG91dGVybW9zdCBhcmd1bWVudHMsIGV4Y2VwdCB0aGlzLCBhcmUgZGVmaW5pdGVseSByZWFkLgor
ICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gbV9ncmFwaC5tX2NvZGVCbG9jay0+bnVtUGFy
YW1ldGVycygpOyBpLS0gPiAxOykKKyAgICAgICAgICAgICAgICBtX3JlYWQodmlydHVhbFJlZ2lz
dGVyRm9yQXJndW1lbnQoaSkpOworICAgICAgICAKKyAgICAgICAgICAgIC8vIFRoZSBzdGFjayBo
ZWFkZXIgaXMgcmVhZC4KKyAgICAgICAgICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBKU1N0
YWNrOjpUaGlzQXJndW1lbnQ7ICsraSkKKyAgICAgICAgICAgICAgICBtX3JlYWQoVmlydHVhbFJl
Z2lzdGVyKGkpKTsKKyAgICAgICAgCisgICAgICAgICAgICAvLyBSZWFkIGFsbCBvZiB0aGUgaW5s
aW5lIGFyZ3VtZW50cyBhbmQgY2FsbCBmcmFtZSBoZWFkZXJzIHRoYXQgd2UgZGlkbid0IGFscmVh
ZHkgY2FwdHVyZS4KKyAgICAgICAgICAgIGZvciAoSW5saW5lQ2FsbEZyYW1lKiBpbmxpbmVDYWxs
RnJhbWUgPSBtX25vZGUtPm9yaWdpbi5zZW1hbnRpYy5pbmxpbmVDYWxsRnJhbWU7IGlubGluZUNh
bGxGcmFtZTsgaW5saW5lQ2FsbEZyYW1lID0gaW5saW5lQ2FsbEZyYW1lLT5jYWxsZXIuaW5saW5l
Q2FsbEZyYW1lKSB7CisgICAgICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gaW5saW5lQ2Fs
bEZyYW1lLT5hcmd1bWVudHMuc2l6ZSgpOyBpLS0gPiAxOykKKyAgICAgICAgICAgICAgICAgICAg
bV9yZWFkKFZpcnR1YWxSZWdpc3RlcihpbmxpbmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0ICsgdmly
dHVhbFJlZ2lzdGVyRm9yQXJndW1lbnQoaSkub2Zmc2V0KCkpKTsKKyAgICAgICAgICAgICAgICBp
ZiAoaW5saW5lQ2FsbEZyYW1lLT5pc0Nsb3N1cmVDYWxsKQorICAgICAgICAgICAgICAgICAgICBt
X3JlYWQoVmlydHVhbFJlZ2lzdGVyKGlubGluZUNhbGxGcmFtZS0+c3RhY2tPZmZzZXQgKyBKU1N0
YWNrOjpDYWxsZWUpKTsKKyAgICAgICAgICAgICAgICBpZiAoaW5saW5lQ2FsbEZyYW1lLT5pc1Zh
cmFyZ3MoKSkKKyAgICAgICAgICAgICAgICAgICAgbV9yZWFkKFZpcnR1YWxSZWdpc3Rlcihpbmxp
bmVDYWxsRnJhbWUtPnN0YWNrT2Zmc2V0ICsgSlNTdGFjazo6QXJndW1lbnRDb3VudCkpOworICAg
ICAgICAgICAgfQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0gfQogICAgIH0KICAgICAK
ICAgICBHcmFwaCYgbV9ncmFwaDsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZH
UHV0U3RhY2tTaW5raW5nUGhhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHUHV0U3RhY2tTaW5raW5nUGhhc2UuY3BwCShyZXZpc2lvbiAxODIxNDApCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1B1dFN0YWNrU2lua2luZ1BoYXNlLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjE2LDExICsyMTYsNiBAQCBwdWJsaWM6CiAgICAgICAgICAgICAg
ICAgICAgIGlmICh2ZXJib3NlKQogICAgICAgICAgICAgICAgICAgICAgICAgZGF0YUxvZygiRGVm
ZXJyZWQgYXQgIiwgbm9kZSwgIjoiLCBkZWZlcnJlZCwgIlxuIik7CiAgICAgICAgICAgICAgICAg
ICAgIAotICAgICAgICAgICAgICAgICAgICBpZiAobm9kZS0+b3AoKSA9PSBLaWxsU3RhY2spIHsK
LSAgICAgICAgICAgICAgICAgICAgICAgIGRlZmVycmVkLm9wZXJhbmQobm9kZS0+dW5saW5rZWRM
b2NhbCgpKSA9IENvbmZsaWN0aW5nRmx1c2g7Ci0gICAgICAgICAgICAgICAgICAgICAgICBjb250
aW51ZTsKLSAgICAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAKICAgICAg
ICAgICAgICAgICAgICAgaWYgKG5vZGUtPm9wKCkgPT0gR2V0U3RhY2spIHsKICAgICAgICAgICAg
ICAgICAgICAgICAgIC8vIEEgR2V0U3RhY2sgZG9lc24ndCBhZmZlY3QgYW55dGhpbmcsIHNpbmNl
IHdlIGtub3cgd2hpY2ggbG9jYWwgd2UgYXJlIHJlYWRpbmcKICAgICAgICAgICAgICAgICAgICAg
ICAgIC8vIGZyb20uCkBAIC0zOTIsMTEgKzM4Nyw2IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAKLSAg
ICAgICAgICAgICAgICBjYXNlIEtpbGxTdGFjazogewotICAgICAgICAgICAgICAgICAgICBkZWZl
cnJlZC5vcGVyYW5kKG5vZGUtPnVubGlua2VkTG9jYWwoKSkgPSBDb25mbGljdGluZ0ZsdXNoOwot
ICAgICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAg
ICAgICAgICAgIAogICAgICAgICAgICAgICAgIGNhc2UgR2V0U3RhY2s6IHsKICAgICAgICAgICAg
ICAgICAgICAgU3RhY2tBY2Nlc3NEYXRhKiBkYXRhID0gbm9kZS0+c3RhY2tBY2Nlc3NEYXRhKCk7
CiAgICAgICAgICAgICAgICAgICAgIEZsdXNoRm9ybWF0IGZvcm1hdCA9IGRlZmVycmVkLm9wZXJh
bmQoZGF0YS0+bG9jYWwpOwpAQCAtNDkzLDcgKzQ4Myw3IEBAIHB1YmxpYzoKICAgICAgICAgfQog
ICAgICAgICAKICAgICAgICAgLy8gRmluYWxseSBlbGltaW5hdGUgdGhlIHN1bmtlbiBQdXRTdGFj
a3MgYnkgdHVybmluZyB0aGVtIGludG8gUGhhbnRvbXMuIFRoaXMga2VlcHMgd2hhdGV2ZXIKLSAg
ICAgICAgLy8gdHlwZSBjaGVjayB0aGV5IHdlcmUgZG9pbmcuIEFsc28gcHJlcGVuZCBLaWxsTG9j
YWxzIHRvIHRoZW0gdG8gZW5zdXJlIHRoYXQgd2Uga25vdyB0aGF0CisgICAgICAgIC8vIHR5cGUg
Y2hlY2sgdGhleSB3ZXJlIGRvaW5nLiBBbHNvIHByZXBlbmQgS2lsbFN0YWNrcyB0byB0aGVtIHRv
IGVuc3VyZSB0aGF0IHdlIGtub3cgdGhhdAogICAgICAgICAvLyB0aGUgcmVsZXZhbnQgdmFsdWUg
d2FzICpub3QqIHN0b3JlZCB0byB0aGUgc3RhY2suCiAgICAgICAgIGZvciAoQmFzaWNCbG9jayog
YmxvY2sgOiBtX2dyYXBoLmJsb2Nrc0luTmF0dXJhbE9yZGVyKCkpIHsKICAgICAgICAgICAgIGZv
ciAodW5zaWduZWQgbm9kZUluZGV4ID0gMDsgbm9kZUluZGV4IDwgYmxvY2stPnNpemUoKTsgKytu
b2RlSW5kZXgpIHsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvY2Fs
bC1mb3J3YXJkLXZhcmFyZ3MtZm9yLWlubGluZWQtZXNjYXBlZC1hcmd1bWVudHMuanMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9jYWxsLWZvcndhcmQt
dmFyYXJncy1mb3ItaW5saW5lZC1lc2NhcGVkLWFyZ3VtZW50cy5qcwkocmV2aXNpb24gMCkKKysr
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvY2FsbC1mb3J3YXJkLXZhcmFyZ3Mt
Zm9yLWlubGluZWQtZXNjYXBlZC1hcmd1bWVudHMuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCAr
MSwyMyBAQAorZnVuY3Rpb24gZm9vKCkgeworICAgIHJldHVybiBhcmd1bWVudHM7Cit9CisKK2Z1
bmN0aW9uIGJheihhLCBiLCBjKSB7CisgICAgcmV0dXJuIGEgKyBiICsgYzsKK30KKworbm9Jbmxp
bmUoYmF6KTsKKworZnVuY3Rpb24gYmFyKGEsIGIsIGMpIHsKKyAgICB2YXIgYXJncyA9IGZvbyhi
LCBjLCA0Mik7CisgICAgcmV0dXJuIGJhei5hcHBseSh2b2lkIDAsIGFyZ3MpOworfQorCitub0lu
bGluZShiYXIpOworCitmb3IgKHZhciBpID0gMDsgaSA8IDEwMDAwOyArK2kpIHsKKyAgICB2YXIg
cmVzdWx0ID0gYmFyKDEsIDIsIDMpOworICAgIGlmIChyZXN1bHQgIT0gNDcpCisgICAgICAgIHRo
cm93ICJFcnJvcjogYmFkIHJlc3VsdDogIiArIHJlc3VsdDsKK30KKwpJbmRleDogU291cmNlL0ph
dmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9jb25zdHJ1Y3QtZm9yd2FyZC12YXJhcmdzLWZvci1p
bmxpbmVkLWVzY2FwZWQtYXJndW1lbnRzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS90ZXN0cy9zdHJlc3MvY29uc3RydWN0LWZvcndhcmQtdmFyYXJncy1mb3ItaW5saW5l
ZC1lc2NhcGVkLWFyZ3VtZW50cy5qcwkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS90ZXN0cy9zdHJlc3MvY29uc3RydWN0LWZvcndhcmQtdmFyYXJncy1mb3ItaW5saW5lZC1l
c2NhcGVkLWFyZ3VtZW50cy5qcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDIzIEBACitmdW5j
dGlvbiBmb28oKSB7CisgICAgcmV0dXJuIGFyZ3VtZW50czsKK30KKworZnVuY3Rpb24gQmF6KGEs
IGIsIGMpIHsKKyAgICB0aGlzLmYgPSBhICsgYiArIGM7Cit9CisKK25vSW5saW5lKEJheik7CisK
K2Z1bmN0aW9uIGJhcihhLCBiLCBjKSB7CisgICAgdmFyIGFyZ3MgPSBmb28oYiwgYywgNDIpOwor
ICAgIHJldHVybiBuZXcgQmF6KC4uLmFyZ3MpOworfQorCitub0lubGluZShiYXIpOworCitmb3Ig
KHZhciBpID0gMDsgaSA8IDEwMDAwOyArK2kpIHsKKyAgICB2YXIgcmVzdWx0ID0gYmFyKDEsIDIs
IDMpOworICAgIGlmIChyZXN1bHQuZiAhPSA0NykKKyAgICAgICAgdGhyb3cgIkVycm9yOiBiYWQg
cmVzdWx0OiAiICsgcmVzdWx0LmY7Cit9CisKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90
ZXN0cy9zdHJlc3MvZm9yd2FyZC12YXJhcmdzLWZvci1pbmxpbmVkLWVzY2FwZWQtYXJndW1lbnRz
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvZm9y
d2FyZC12YXJhcmdzLWZvci1pbmxpbmVkLWVzY2FwZWQtYXJndW1lbnRzLmpzCShyZXZpc2lvbiAw
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9mb3J3YXJkLXZhcmFyZ3Mt
Zm9yLWlubGluZWQtZXNjYXBlZC1hcmd1bWVudHMuanMJKHdvcmtpbmcgY29weSkKQEAgLTAsMCAr
MSwyMSBAQAorZnVuY3Rpb24gZm9vKCkgeworICAgIHJldHVybiBhcmd1bWVudHM7Cit9CisKK2Z1
bmN0aW9uIGJheihhLCBiLCBjKSB7CisgICAgcmV0dXJuIGEgKyBiICsgYzsKK30KKworZnVuY3Rp
b24gYmFyKGEsIGIsIGMpIHsKKyAgICB2YXIgYXJncyA9IGZvbyhiLCBjLCA0Mik7CisgICAgcmV0
dXJuIGJhei5hcHBseSh2b2lkIDAsIGFyZ3MpOworfQorCitub0lubGluZShiYXIpOworCitmb3Ig
KHZhciBpID0gMDsgaSA8IDEwMDAwOyArK2kpIHsKKyAgICB2YXIgcmVzdWx0ID0gYmFyKDEsIDIs
IDMpOworICAgIGlmIChyZXN1bHQgIT0gNDcpCisgICAgICAgIHRocm93ICJFcnJvcjogYmFkIHJl
c3VsdDogIiArIHJlc3VsdDsKK30KKwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L3N0cmVzcy9nZXQtbXktYXJndW1lbnQtYnktdmFsLWZvci1pbmxpbmVkLWVzY2FwZWQtYXJndW1l
bnRzLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3Mv
Z2V0LW15LWFyZ3VtZW50LWJ5LXZhbC1mb3ItaW5saW5lZC1lc2NhcGVkLWFyZ3VtZW50cy5qcwko
cmV2aXNpb24gMCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvZ2V0LW15
LWFyZ3VtZW50LWJ5LXZhbC1mb3ItaW5saW5lZC1lc2NhcGVkLWFyZ3VtZW50cy5qcwkod29ya2lu
ZyBjb3B5KQpAQCAtMCwwICsxLDE4IEBACitmdW5jdGlvbiBmb28oKSB7CisgICAgcmV0dXJuIGFy
Z3VtZW50czsKK30KKworZnVuY3Rpb24gYmFyKGEsIGIsIGMsIGkpIHsKKyAgICB2YXIgYXJncyA9
IGZvbyhiLCBjLCA0Mik7CisgICAgcmV0dXJuIGFyZ3NbaV07Cit9CisKK25vSW5saW5lKGJhcik7
CisKK3ZhciBleHBlY3RlZCA9IFsyLCAzLCA0Ml07Citmb3IgKHZhciBpID0gMDsgaSA8IDEwMDAw
OyArK2kpIHsKKyAgICB2YXIgcmVzdWx0ID0gYmFyKDEsIDIsIDMsIGkgJSAzKTsKKyAgICBpZiAo
cmVzdWx0ICE9IGV4cGVjdGVkW2kgJSAzXSkKKyAgICAgICAgdGhyb3cgIkVycm9yOiBiYWQgcmVz
dWx0OiAiICsgcmVzdWx0OworfQorCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMv
c3RyZXNzL3JlYWwtZm9yd2FyZC12YXJhcmdzLWZvci1pbmxpbmVkLWVzY2FwZWQtYXJndW1lbnRz
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvcmVh
bC1mb3J3YXJkLXZhcmFyZ3MtZm9yLWlubGluZWQtZXNjYXBlZC1hcmd1bWVudHMuanMJKHJldmlz
aW9uIDApCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3JlYWwtZm9yd2Fy
ZC12YXJhcmdzLWZvci1pbmxpbmVkLWVzY2FwZWQtYXJndW1lbnRzLmpzCSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsMjUgQEAKK2Z1bmN0aW9uIGZvbygpIHsKKyAgICByZXR1cm4gYXJndW1lbnRz
OworfQorCitmdW5jdGlvbiBmdXp6KGFyZ3MpIHsKKyAgICByZXR1cm4gZm9vLmFwcGx5KHZvaWQg
MCwgYXJncyk7Cit9CisKK2Z1bmN0aW9uIGJheihhLCBiLCBjKSB7CisgICAgcmV0dXJuIGEgKyBi
ICsgYzsKK30KKworZnVuY3Rpb24gYmFyKGFyZ3MxKSB7CisgICAgdmFyIGFyZ3MyID0gZnV6eihh
cmdzMSk7CisgICAgcmV0dXJuIGJhei5hcHBseSh2b2lkIDAsIGFyZ3MyKTsKK30KKworbm9Jbmxp
bmUoYmFyKTsKKworZm9yICh2YXIgaSA9IDA7IGkgPCAyMDAwMDsgKytpKSB7CisgICAgdmFyIHJl
c3VsdCA9IGJhcihbMSwgMiwgM10pOworICAgIGlmIChyZXN1bHQgIT0gNikKKyAgICAgICAgdGhy
b3cgIkVycm9yOiBiYWQgcmVzdWx0OiAiICsgcmVzdWx0OworfQorCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>