<?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>104623</bug_id>
          
          <creation_ts>2012-12-10 18:27:53 -0800</creation_ts>
          <short_desc>Named lookups on HTML documents produce inconsistent results in JavaScriptCore bindings</short_desc>
          <delta_ts>2012-12-20 03:48:25 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore JavaScript</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Boris Zbarsky">bzbarsky</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>fpizlo</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>koivisto</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>787929</commentid>
    <comment_count>0</comment_count>
    <who name="Boris Zbarsky">bzbarsky</who>
    <bug_when>2012-12-10 18:27:53 -0800</bug_when>
    <thetext>BUILD: Current WebKit nightly, though Safari 6 has the same behavior

STEPS TO REPRODUCE: Load attached testcase

EXPECTED RESULTS: The output does not depend on the iteration count

ACTUAL RESULTS: Once the iteration counts get high enough, the output changes. Looks like an inline cache that&apos;s not being invalidated when shadowing properties are introduced on the document via the name getter or something.

I have no idea whether this belongs in &quot;HTML DOM&quot; or &quot;JavaScriptCore&quot;; it&apos;s sort of about the interaction between the two.  Please feel free to move as needed.

As a note, Gecko+SpiderMonkey has all sorts of weird around this too.  I was investigating what other UAs did when I ran into this behavior in WebKit+JavaScriptCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>787930</commentid>
    <comment_count>1</comment_count>
      <attachid>178683</attachid>
    <who name="Boris Zbarsky">bzbarsky</who>
    <bug_when>2012-12-10 18:28:26 -0800</bug_when>
    <thetext>Created attachment 178683
Testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>788602</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-12-11 10:56:43 -0800</bug_when>
    <thetext>Ick.

Phil, do you think that it&apos;s yours?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>788686</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-12-11 12:47:30 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Ick.
&gt; 
&gt; Phil, do you think that it&apos;s yours?

Yup. That&apos;s probably a DFG bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789970</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-12-12 15:17:33 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #2)
&gt; &gt; Ick.
&gt; &gt; 
&gt; &gt; Phil, do you think that it&apos;s yours?
&gt; 
&gt; Yup. That&apos;s probably a DFG bug.

Definitely a DFG or JIT bug.  Disabling the JIT makes this produce same results regardless of iteration count.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>790032</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-12-12 16:17:18 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; (In reply to comment #2)
&gt; &gt; &gt; Ick.
&gt; &gt; &gt; 
&gt; &gt; &gt; Phil, do you think that it&apos;s yours?
&gt; &gt; 
&gt; &gt; Yup. That&apos;s probably a DFG bug.
&gt; 
&gt; Definitely a DFG or JIT bug.  Disabling the JIT makes this produce same results regardless of iteration count.

It&apos;s a JIT prototype chain inline caching bug.  We were completely ignoring the possibility of a prototype having a GetOwnPropertySlot trap.  Boo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791211</commentid>
    <comment_count>6</comment_count>
      <attachid>179396</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-12-13 18:32:33 -0800</bug_when>
    <thetext>Created attachment 179396
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791213</commentid>
    <comment_count>7</comment_count>
      <attachid>179396</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-12-13 18:36:19 -0800</bug_when>
    <thetext>Comment on attachment 179396
the patch

r=me

Please land with the test attached here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791245</commentid>
    <comment_count>8</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-12-13 19:28:22 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/137700</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791265</commentid>
    <comment_count>9</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-12-13 20:06:19 -0800</bug_when>
    <thetext>Rebaselined run-bindings-tests in r137704.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791277</commentid>
    <comment_count>10</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-12-13 20:20:58 -0800</bug_when>
    <thetext>This caused massive crashes because I only tested in release mode and failed to catch a bad assert.  That&apos;s now fixed by http://trac.webkit.org/changeset/137705.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795336</commentid>
    <comment_count>11</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2012-12-20 03:43:16 -0800</bug_when>
    <thetext>This seems to have caused massive (&gt;50%) performance regressions in a number of Bindings microbenchmarks:

Bindings/get-element-by-id
Bindings/get-elements-by-tag-name
Bindings/create-element

http://webkit-perf.appspot.com/graph.html#tests=[[3030063,2001,32196],[2863935,2001,32196],[2971082,2001,32196]]&amp;sel=1355398469646,1355548767856.7356&amp;displayrange=7&amp;datatype=running</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>795338</commentid>
    <comment_count>12</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2012-12-20 03:48:25 -0800</bug_when>
    <thetext>Bug 105526</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>178683</attachid>
            <date>2012-12-10 18:28:26 -0800</date>
            <delta_ts>2012-12-10 18:28:26 -0800</delta_ts>
            <desc>Testcase</desc>
            <filename>bar.html</filename>
            <type>text/html</type>
            <size>586</size>
            <attacher name="Boris Zbarsky">bzbarsky</attacher>
            
              <data encoding="base64">PCFkb2N0eXBlIGh0bWw+Cjxib2R5Pgo8cHJlPjxzY3JpcHQ+CiAgdmFyIGRvYyA9IGRvY3VtZW50
OwogIGZ1bmN0aW9uIGYoY291bnQpIHsKICAgIHZhciBmb287CiAgICBmb3IgKHZhciBpID0gMDsg
aSA8IGNvdW50OyArK2kpIHsKICAgICAgZm9vID0gZG9jLmdldEVsZW1lbnRzQnlUYWdOYW1lOwog
ICAgfQogICAgZG9jdW1lbnQud3JpdGVsbihmb28pOwogIH0KICAgICAgICAgICAgICAgICAgICAg
IAogIGZ1bmN0aW9uIGcoY291bnQpIHsKICAgIGRvY3VtZW50LndyaXRlbG4oY291bnQgKyAiIGl0
ZXJhdGlvbnM6Iik7CiAgICBmKGNvdW50KTsKICAgIHZhciBpbWcgPSBuZXcgSW1hZ2UoKTsKICAg
IGltZy5uYW1lID0gImdldEVsZW1lbnRzQnlUYWdOYW1lIjsKICAgIGRvY3VtZW50LmJvZHkuYXBw
ZW5kQ2hpbGQoaW1nKTsKICAgIGYoY291bnQpOwogICAgaW1nLnBhcmVudE5vZGUucmVtb3ZlQ2hp
bGQoaW1nKTsKICAgIGYoY291bnQpOwogICAgZG9jdW1lbnQud3JpdGVsbigiLS0tLS0tIik7CiAg
fQoKICBnKDIpOwogIGcoMTApOwogIGcoMjApOwogIGcoMjAwKTsKICBnKDIwMDApOwogIGcoMjAw
MDAwKTsKPC9zY3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179396</attachid>
            <date>2012-12-13 18:32:33 -0800</date>
            <delta_ts>2012-12-13 18:36:19 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>fix.patch</filename>
            <type>text/plain</type>
            <size>11163</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTM3Njk2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBA
CisyMDEyLTEyLTEzICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
TmFtZWQgbG9va3VwcyBvbiBIVE1MIGRvY3VtZW50cyBwcm9kdWNlIGluY29uc2lzdGVudCByZXN1
bHRzIGluIEphdmFTY3JpcHRDb3JlIGJpbmRpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ2MjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdGhlIG5vdGlvbiBvZiBvYmplY3RzIHRoYXQgSGFz
SW1wdXJlR2V0T3duUHJvcGVydHlTbG90LCBhbmQgdXNlIHRoYXQgdG8gaW5oaWJpdCBwcm90b3R5
cGUgY2hhaW4gY2FjaGluZworICAgICAgICBpbiBzb21lIGNhc2VzLiBUaGlzIGFwcGVhcnMgdG8g
YmUgcGVyZi1uZXV0cmFsIG9uIGJlbmNobWFya3MgdGhhdCB3ZSB0cmFjay4KKworICAgICAgICAq
IGRmZy9ERkdSZXBhdGNoLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjp0cnlDYWNoZUdldEJ5SUQp
OgorICAgICAgICAoSlNDOjpERkc6OnRyeUJ1aWxkR2V0QnlJRFByb3RvTGlzdCk6CisgICAgICAg
ICogaml0L0pJVFN0dWJzLmNwcDoKKyAgICAgICAgKEpTQzo6SklUVGh1bmtzOjp0cnlDYWNoZUdl
dEJ5SUQpOgorICAgICAgICAoSlNDOjpERUZJTkVfU1RVQl9GVU5DVElPTik6CisgICAgICAgICog
cnVudGltZS9KU1R5cGVJbmZvLmg6CisgICAgICAgIChKU0MpOgorICAgICAgICAoSlNDOjpUeXBl
SW5mbzo6aGFzSW1wdXJlR2V0T3duUHJvcGVydHlTbG90KToKKyAgICAgICAgKiBydW50aW1lL09w
ZXJhdGlvbnMuaDoKKyAgICAgICAgKEpTQzo6bm9ybWFsaXplUHJvdG90eXBlQ2hhaW5Gb3JDaGFp
bkFjY2Vzcyk6CisKIDIwMTItMTMtMTEgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4K
IAogICAgICAgICBTdXBwb3J0IG9wX3R5cGVvZiBpbiB0aGUgREZHCkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZGZnL0RGR1JlcGF0Y2guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9kZmcvREZHUmVwYXRjaC5jcHAJKHJldmlzaW9uIDEzNzU0MCkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHUmVwYXRjaC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM0
MSw3ICszNDEsNyBAQCBzdGF0aWMgYm9vbCB0cnlDYWNoZUdldEJ5SUQoRXhlY1N0YXRlKiBlCiAg
ICAgICAgIHJldHVybiBmYWxzZTsKICAgICAKICAgICBQcm9wZXJ0eU9mZnNldCBvZmZzZXQgPSBz
bG90LmNhY2hlZE9mZnNldCgpOwotICAgIHNpemVfdCBjb3VudCA9IG5vcm1hbGl6ZVByb3RvdHlw
ZUNoYWluKGV4ZWMsIGJhc2VWYWx1ZSwgc2xvdC5zbG90QmFzZSgpLCBwcm9wZXJ0eU5hbWUsIG9m
ZnNldCk7CisgICAgc2l6ZV90IGNvdW50ID0gbm9ybWFsaXplUHJvdG90eXBlQ2hhaW5Gb3JDaGFp
bkFjY2VzcyhleGVjLCBiYXNlVmFsdWUsIHNsb3Quc2xvdEJhc2UoKSwgcHJvcGVydHlOYW1lLCBv
ZmZzZXQpOwogICAgIGlmIChjb3VudCA9PSBJbnZhbGlkUHJvdG90eXBlQ2hhaW4pCiAgICAgICAg
IHJldHVybiBmYWxzZTsKIApAQCAtNTY5LDcgKzU2OSw3IEBAIHN0YXRpYyBib29sIHRyeUJ1aWxk
R2V0QnlJRFByb3RvTGlzdChFeGUKICAgICBBU1NFUlQoc2xvdC5zbG90QmFzZSgpLmlzT2JqZWN0
KCkpOwogICAgIAogICAgIFByb3BlcnR5T2Zmc2V0IG9mZnNldCA9IHNsb3QuY2FjaGVkT2Zmc2V0
KCk7Ci0gICAgc2l6ZV90IGNvdW50ID0gbm9ybWFsaXplUHJvdG90eXBlQ2hhaW4oZXhlYywgYmFz
ZVZhbHVlLCBzbG90LnNsb3RCYXNlKCksIHByb3BlcnR5TmFtZSwgb2Zmc2V0KTsKKyAgICBzaXpl
X3QgY291bnQgPSBub3JtYWxpemVQcm90b3R5cGVDaGFpbkZvckNoYWluQWNjZXNzKGV4ZWMsIGJh
c2VWYWx1ZSwgc2xvdC5zbG90QmFzZSgpLCBwcm9wZXJ0eU5hbWUsIG9mZnNldCk7CiAgICAgaWYg
KGNvdW50ID09IEludmFsaWRQcm90b3R5cGVDaGFpbikKICAgICAgICAgcmV0dXJuIGZhbHNlOwog
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFN0dWJzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFN0dWJzLmNwcAkocmV2aXNpb24gMTM3
NTQwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVicy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTkwOCw2ICs5MDgsNyBAQCBORVZFUl9JTkxJTkUgdm9pZCBKSVRUaHVua3M6OnRy
eUNhY2hlR2V0CiAKICAgICAvLyBVbmNhY2hlYWJsZTogZ2l2ZSB1cC4KICAgICBpZiAoIXNsb3Qu
aXNDYWNoZWFibGUoKSkgeworICAgICAgICBzdHViSW5mby0+YWNjZXNzVHlwZSA9IGFjY2Vzc19n
ZXRfYnlfaWRfZ2VuZXJpYzsKICAgICAgICAgY3RpUGF0Y2hDYWxsQnlSZXR1cm5BZGRyZXNzKGNv
ZGVCbG9jaywgcmV0dXJuQWRkcmVzcywgRnVuY3Rpb25QdHIoY3RpX29wX2dldF9ieV9pZF9nZW5l
cmljKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC05MTYsNiArOTE3LDcgQEAgTkVWRVJf
SU5MSU5FIHZvaWQgSklUVGh1bmtzOjp0cnlDYWNoZUdldAogICAgIFN0cnVjdHVyZSogc3RydWN0
dXJlID0gYmFzZUNlbGwtPnN0cnVjdHVyZSgpOwogCiAgICAgaWYgKHN0cnVjdHVyZS0+aXNVbmNh
Y2hlYWJsZURpY3Rpb25hcnkoKSB8fCBzdHJ1Y3R1cmUtPnR5cGVJbmZvKCkucHJvaGliaXRzUHJv
cGVydHlDYWNoaW5nKCkpIHsKKyAgICAgICAgc3R1YkluZm8tPmFjY2Vzc1R5cGUgPSBhY2Nlc3Nf
Z2V0X2J5X2lkX2dlbmVyaWM7CiAgICAgICAgIGN0aVBhdGNoQ2FsbEJ5UmV0dXJuQWRkcmVzcyhj
b2RlQmxvY2ssIHJldHVybkFkZHJlc3MsIEZ1bmN0aW9uUHRyKGN0aV9vcF9nZXRfYnlfaWRfZ2Vu
ZXJpYykpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtOTM0LDYgKzkzNiw3IEBAIE5FVkVS
X0lOTElORSB2b2lkIEpJVFRodW5rczo6dHJ5Q2FjaGVHZXQKICAgICB9CiAKICAgICBpZiAoc3Ry
dWN0dXJlLT5pc0RpY3Rpb25hcnkoKSkgeworICAgICAgICBzdHViSW5mby0+YWNjZXNzVHlwZSA9
IGFjY2Vzc19nZXRfYnlfaWRfZ2VuZXJpYzsKICAgICAgICAgY3RpUGF0Y2hDYWxsQnlSZXR1cm5B
ZGRyZXNzKGNvZGVCbG9jaywgcmV0dXJuQWRkcmVzcywgRnVuY3Rpb25QdHIoY3RpX29wX2dldF9i
eV9pZF9nZW5lcmljKSk7CiAgICAgICAgIHJldHVybjsKICAgICB9CkBAIC05NDMsNiArOTQ2LDEy
IEBAIE5FVkVSX0lOTElORSB2b2lkIEpJVFRodW5rczo6dHJ5Q2FjaGVHZXQKICAgICAgICAgCiAg
ICAgICAgIEpTT2JqZWN0KiBzbG90QmFzZU9iamVjdCA9IGFzT2JqZWN0KHNsb3Quc2xvdEJhc2Uo
KSk7CiAgICAgICAgIHNpemVfdCBvZmZzZXQgPSBzbG90LmNhY2hlZE9mZnNldCgpOworCisgICAg
ICAgIGlmIChzdHJ1Y3R1cmUtPnR5cGVJbmZvKCkuaGFzSW1wdXJlR2V0T3duUHJvcGVydHlTbG90
KCkpIHsKKyAgICAgICAgICAgIHN0dWJJbmZvLT5hY2Nlc3NUeXBlID0gYWNjZXNzX2dldF9ieV9p
ZF9nZW5lcmljOworICAgICAgICAgICAgY3RpUGF0Y2hDYWxsQnlSZXR1cm5BZGRyZXNzKGNvZGVC
bG9jaywgcmV0dXJuQWRkcmVzcywgRnVuY3Rpb25QdHIoY3RpX29wX2dldF9ieV9pZF9nZW5lcmlj
KSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KICAgICAgICAgCiAgICAgICAgIC8v
IFNpbmNlIHdlJ3JlIGFjY2Vzc2luZyBhIHByb3RvdHlwZSBpbiBhIGxvb3AsIGl0J3MgYSBnb29k
IGJldCB0aGF0IGl0CiAgICAgICAgIC8vIHNob3VsZCBub3QgYmUgdHJlYXRlZCBhcyBhIGRpY3Rp
b25hcnkuCkBAIC05NjAsOSArOTY5LDEwIEBAIE5FVkVSX0lOTElORSB2b2lkIEpJVFRodW5rczo6
dHJ5Q2FjaGVHZXQKICAgICB9CiAKICAgICBQcm9wZXJ0eU9mZnNldCBvZmZzZXQgPSBzbG90LmNh
Y2hlZE9mZnNldCgpOwotICAgIHNpemVfdCBjb3VudCA9IG5vcm1hbGl6ZVByb3RvdHlwZUNoYWlu
KGNhbGxGcmFtZSwgYmFzZVZhbHVlLCBzbG90LnNsb3RCYXNlKCksIHByb3BlcnR5TmFtZSwgb2Zm
c2V0KTsKKyAgICBzaXplX3QgY291bnQgPSBub3JtYWxpemVQcm90b3R5cGVDaGFpbkZvckNoYWlu
QWNjZXNzKGNhbGxGcmFtZSwgYmFzZVZhbHVlLCBzbG90LnNsb3RCYXNlKCksIHByb3BlcnR5TmFt
ZSwgb2Zmc2V0KTsKICAgICBpZiAoY291bnQgPT0gSW52YWxpZFByb3RvdHlwZUNoYWluKSB7CiAg
ICAgICAgIHN0dWJJbmZvLT5hY2Nlc3NUeXBlID0gYWNjZXNzX2dldF9ieV9pZF9nZW5lcmljOwor
ICAgICAgICBjdGlQYXRjaENhbGxCeVJldHVybkFkZHJlc3MoY29kZUJsb2NrLCByZXR1cm5BZGRy
ZXNzLCBGdW5jdGlvblB0cihjdGlfb3BfZ2V0X2J5X2lkX2dlbmVyaWMpKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0KIApAQCAtMTY4OSw2ICsxNjk5LDEyIEBAIERFRklORV9TVFVCX0ZVTkNUSU9O
KEVuY29kZWRKU1ZhbHVlLCBvcF8KICAgICAgICAgY3RpUGF0Y2hDYWxsQnlSZXR1cm5BZGRyZXNz
KGNvZGVCbG9jaywgU1RVQl9SRVRVUk5fQUREUkVTUywgRnVuY3Rpb25QdHIoY3RpX29wX2dldF9i
eV9pZF9wcm90b19mYWlsKSk7CiAgICAgZWxzZSBpZiAoc2xvdC5zbG90QmFzZSgpID09IGJhc2VW
YWx1ZS5hc0NlbGwoKS0+c3RydWN0dXJlKCktPnByb3RvdHlwZUZvckxvb2t1cChjYWxsRnJhbWUp
KSB7CiAgICAgICAgIEFTU0VSVCghYmFzZVZhbHVlLmFzQ2VsbCgpLT5zdHJ1Y3R1cmUoKS0+aXNE
aWN0aW9uYXJ5KCkpOworICAgICAgICAKKyAgICAgICAgaWYgKGJhc2VWYWx1ZS5hc0NlbGwoKS0+
c3RydWN0dXJlKCktPnR5cGVJbmZvKCkuaGFzSW1wdXJlR2V0T3duUHJvcGVydHlTbG90KCkpIHsK
KyAgICAgICAgICAgIGN0aVBhdGNoQ2FsbEJ5UmV0dXJuQWRkcmVzcyhjb2RlQmxvY2ssIFNUVUJf
UkVUVVJOX0FERFJFU1MsIEZ1bmN0aW9uUHRyKGN0aV9vcF9nZXRfYnlfaWRfcHJvdG9fZmFpbCkp
OworICAgICAgICAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShyZXN1bHQpOworICAgICAgICB9
CisgICAgICAgIAogICAgICAgICAvLyBTaW5jZSB3ZSdyZSBhY2Nlc3NpbmcgYSBwcm90b3R5cGUg
aW4gYSBsb29wLCBpdCdzIGEgZ29vZCBiZXQgdGhhdCBpdAogICAgICAgICAvLyBzaG91bGQgbm90
IGJlIHRyZWF0ZWQgYXMgYSBkaWN0aW9uYXJ5LgogICAgICAgICBpZiAoc2xvdEJhc2VPYmplY3Qt
PnN0cnVjdHVyZSgpLT5pc0RpY3Rpb25hcnkoKSkgewpAQCAtMTcwNSw3ICsxNzIxLDcgQEAgREVG
SU5FX1NUVUJfRlVOQ1RJT04oRW5jb2RlZEpTVmFsdWUsIG9wXwogICAgICAgICAgICAgICAgIGN0
aVBhdGNoQ2FsbEJ5UmV0dXJuQWRkcmVzcyhjb2RlQmxvY2ssIFNUVUJfUkVUVVJOX0FERFJFU1Ms
IEZ1bmN0aW9uUHRyKGN0aV9vcF9nZXRfYnlfaWRfcHJvdG9fbGlzdF9mdWxsKSk7CiAgICAgICAg
IH0KICAgICB9IGVsc2UgewotICAgICAgICBzaXplX3QgY291bnQgPSBub3JtYWxpemVQcm90b3R5
cGVDaGFpbihjYWxsRnJhbWUsIGJhc2VWYWx1ZSwgc2xvdC5zbG90QmFzZSgpLCBwcm9wZXJ0eU5h
bWUsIG9mZnNldCk7CisgICAgICAgIHNpemVfdCBjb3VudCA9IG5vcm1hbGl6ZVByb3RvdHlwZUNo
YWluRm9yQ2hhaW5BY2Nlc3MoY2FsbEZyYW1lLCBiYXNlVmFsdWUsIHNsb3Quc2xvdEJhc2UoKSwg
cHJvcGVydHlOYW1lLCBvZmZzZXQpOwogICAgICAgICBpZiAoY291bnQgPT0gSW52YWxpZFByb3Rv
dHlwZUNoYWluKSB7CiAgICAgICAgICAgICBjdGlQYXRjaENhbGxCeVJldHVybkFkZHJlc3MoY29k
ZUJsb2NrLCBTVFVCX1JFVFVSTl9BRERSRVNTLCBGdW5jdGlvblB0cihjdGlfb3BfZ2V0X2J5X2lk
X3Byb3RvX2ZhaWwpKTsKICAgICAgICAgICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUocmVzdWx0
KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZUluZm8uaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1R5cGVJbmZvLmgJKHJl
dmlzaW9uIDEzNzU0MCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTVHlwZUlu
Zm8uaAkod29ya2luZyBjb3B5KQpAQCAtNDYsNiArNDYsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgT3ZlcnJpZGVzVmlzaXRDaGlsZHJlbiA9IDEgPDwgNzsK
ICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgT3ZlcnJpZGVzR2V0UHJvcGVydHlOYW1lcyA9IDEg
PDwgODsKICAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgUHJvaGliaXRzUHJvcGVydHlDYWNoaW5n
ID0gMSA8PCA5OworICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBIYXNJbXB1cmVHZXRPd25Qcm9w
ZXJ0eVNsb3QgPSAxIDw8IDEwOwogCiAgICAgY2xhc3MgVHlwZUluZm8gewogICAgIHB1YmxpYzoK
QEAgLTgwLDYgKzgxLDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIGJvb2wgb3ZlcnJpZGVz
VmlzaXRDaGlsZHJlbigpIGNvbnN0IHsgcmV0dXJuIGlzU2V0T25GbGFnczEoT3ZlcnJpZGVzVmlz
aXRDaGlsZHJlbik7IH0KICAgICAgICAgYm9vbCBvdmVycmlkZXNHZXRQcm9wZXJ0eU5hbWVzKCkg
Y29uc3QgeyByZXR1cm4gaXNTZXRPbkZsYWdzMihPdmVycmlkZXNHZXRQcm9wZXJ0eU5hbWVzKTsg
fQogICAgICAgICBib29sIHByb2hpYml0c1Byb3BlcnR5Q2FjaGluZygpIGNvbnN0IHsgcmV0dXJu
IGlzU2V0T25GbGFnczIoUHJvaGliaXRzUHJvcGVydHlDYWNoaW5nKTsgfQorICAgICAgICBib29s
IGhhc0ltcHVyZUdldE93blByb3BlcnR5U2xvdCgpIGNvbnN0IHsgcmV0dXJuIGlzU2V0T25GbGFn
czIoSGFzSW1wdXJlR2V0T3duUHJvcGVydHlTbG90KTsgfQogCiAgICAgICAgIHN0YXRpYyBwdHJk
aWZmX3QgZmxhZ3NPZmZzZXQoKQogICAgICAgICB7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9PcGVyYXRpb25zLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvT3BlcmF0aW9ucy5oCShyZXZpc2lvbiAxMzc1NDApCisrKyBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvcnVudGltZS9PcGVyYXRpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTMwMiwx
NSArMzAyLDE4IEBAIG5hbWVzcGFjZSBKU0MgewogCiAjZGVmaW5lIEludmFsaWRQcm90b3R5cGVD
aGFpbiAoc3RkOjpudW1lcmljX2xpbWl0czxzaXplX3Q+OjptYXgoKSkKIAotICAgIGlubGluZSBz
aXplX3Qgbm9ybWFsaXplUHJvdG90eXBlQ2hhaW4oQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTVmFs
dWUgYmFzZSwgSlNWYWx1ZSBzbG90QmFzZSwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1l
LCBQcm9wZXJ0eU9mZnNldCYgc2xvdE9mZnNldCkKKyAgICBpbmxpbmUgc2l6ZV90IG5vcm1hbGl6
ZVByb3RvdHlwZUNoYWluRm9yQ2hhaW5BY2Nlc3MoQ2FsbEZyYW1lKiBjYWxsRnJhbWUsIEpTVmFs
dWUgYmFzZSwgSlNWYWx1ZSBzbG90QmFzZSwgY29uc3QgSWRlbnRpZmllciYgcHJvcGVydHlOYW1l
LCBQcm9wZXJ0eU9mZnNldCYgc2xvdE9mZnNldCkKICAgICB7CiAgICAgICAgIEpTQ2VsbCogY2Vs
bCA9IGJhc2UuYXNDZWxsKCk7CiAgICAgICAgIHNpemVfdCBjb3VudCA9IDA7Ci0KKyAgICAgICAg
CiAgICAgICAgIHdoaWxlIChzbG90QmFzZSAhPSBjZWxsKSB7CiAgICAgICAgICAgICBpZiAoY2Vs
bC0+aXNQcm94eSgpKQogICAgICAgICAgICAgICAgIHJldHVybiBJbnZhbGlkUHJvdG90eXBlQ2hh
aW47CiAgICAgICAgICAgICAKKyAgICAgICAgICAgIGlmIChjZWxsLT5zdHJ1Y3R1cmUoKS0+dHlw
ZUluZm8oKS5oYXNJbXB1cmVHZXRPd25Qcm9wZXJ0eVNsb3QoKSkKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gSW52YWxpZFByb3RvdHlwZUNoYWluOworICAgICAgICAgICAgCiAgICAgICAgICAgICBK
U1ZhbHVlIHYgPSBjZWxsLT5zdHJ1Y3R1cmUoKS0+cHJvdG90eXBlRm9yTG9va3VwKGNhbGxGcmFt
ZSk7CiAKICAgICAgICAgICAgIC8vIElmIHdlIGRpZG4ndCBmaW5kIHNsb3RCYXNlIGluIGJhc2Un
cyBwcm90b3R5cGUgY2hhaW4sIHRoZW4gYmFzZQpAQCAtMzI4LDcgKzMzMSw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogICAgICAgICAgICAgICAgIGlmIChzbG90QmFzZSA9PSBjZWxsKQogICAgICAgICAg
ICAgICAgICAgICBzbG90T2Zmc2V0ID0gY2VsbC0+c3RydWN0dXJlKCktPmdldChjYWxsRnJhbWUt
Pmdsb2JhbERhdGEoKSwgcHJvcGVydHlOYW1lKTsgCiAgICAgICAgICAgICB9Ci0KKyAgICAgICAg
ICAgIAogICAgICAgICAgICAgKytjb3VudDsKICAgICAgICAgfQogICAgICAgICAKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cJKHJldmlzaW9uIDEzNzY5NikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDEyLTEyLTEzICBGaWxpcCBQaXpsbyAgPGZw
aXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAgTmFtZWQgbG9va3VwcyBvbiBIVE1MIGRvY3VtZW50
cyBwcm9kdWNlIGluY29uc2lzdGVudCByZXN1bHRzIGluIEphdmFTY3JpcHRDb3JlIGJpbmRpbmdz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQ2MjMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBbGwgRE9N
IG9iamVjdHMgdGhhdCBoYXZlIG5hbWVkIGdldHRlcnMgb3IgZGlyZWN0bHkgb3ZlcnJpZGUgZ2V0
T3duUHJvcGVydHlTbG90IGFyZSBub3cgbWFya2VkIGFzCisgICAgICAgIEhhc0ltcHVyZUdldE93
blByb3BlcnR5U2xvdC4KKworICAgICAgICBObyBuZXcgdGVzdHMgKE9PUFMhKS4KKworICAgICAg
ICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOgorICAgICAgICAoR2VuZXJh
dGVIZWFkZXIpOgorCiAyMDEyLTEyLTEzICBCZWFyIFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNv
bT4KIAogICAgICAgICBQb3NpdGlvbmVkIHJlcGxhY2VkIGVsZW1lbnRzIHNob3VsZCByZXNvbHZl
IHZlcnRpY2FsIG1hcmdpbnMgYWdhaW5zdCB0aGVpciBjb250YWluaW5nCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQkocmV2
aXNpb24gMTM3NTQwKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9ySlMucG0JKHdvcmtpbmcgY29weSkKQEAgLTc4NCwxNiArNzg0LDIzIEBAIHN1YiBHZW5l
cmF0ZUhlYWRlcgogCiAgICAgJGltcGxJbmNsdWRlc3siJHtjbGFzc05hbWV9Q3VzdG9tLmgifSA9
IDEgaWYgISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbUhlYWRlciJ9
ICYmICgkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tUHV0RnVuY3Rpb24i
fSB8fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRTZXR0ZXIi
fSk7CiAKKyAgICBteSAkaGFzSW1wdXJlTmFtZWRHZXR0ZXIgPQorICAgICAgICAkaW50ZXJmYWNl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTmFtZWRHZXR0ZXIifQorICAgICAgICB8fCAkaW50ZXJm
YWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRHZXR0ZXIifQorICAgICAgICB8
fCAkaW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tR2V0T3duUHJvcGVydHlT
bG90In07CisKICAgICBteSAkaGFzQ29tcGxleEdldHRlciA9CiAgICAgICAgICRpbnRlcmZhY2Ut
PmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJbmRleGVkR2V0dGVyIn0KICAgICAgICAgfHwgJGludGVy
ZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57Ik51bWVyaWNJbmRleGVkR2V0dGVyIn0KLSAgICAg
ICAgfHwgJGludGVyZmFjZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbUdldE93blByb3Bl
cnR5U2xvdCJ9CiAgICAgICAgIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJK
U0N1c3RvbUdldE93blByb3BlcnR5U2xvdEFuZERlc2NyaXB0b3IifQotICAgICAgICB8fCAkaW50
ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiTmFtZWRHZXR0ZXIifQotICAgICAgICB8fCAk
aW50ZXJmYWNlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tTmFtZWRHZXR0ZXIifTsKKyAg
ICAgICAgfHwgJGhhc0ltcHVyZU5hbWVkR2V0dGVyOwogICAgIAogICAgIG15ICRoYXNHZXR0ZXIg
PSAkbnVtQXR0cmlidXRlcyA+IDAgfHwgISRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJPbWl0Q29uc3RydWN0b3IifSB8fCAkaGFzQ29tcGxleEdldHRlcjsKIAorICAgIGlmICgkaGFz
SW1wdXJlTmFtZWRHZXR0ZXIpIHsKKyAgICAgICAgJHN0cnVjdHVyZUZsYWdzeyJKU0M6Okhhc0lt
cHVyZUdldE93blByb3BlcnR5U2xvdCJ9ID0gMTsKKyAgICB9CisKICAgICAjIEdldHRlcnMKICAg
ICBpZiAoJGhhc0dldHRlcikgewogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCAiICAgIHN0
YXRpYyBib29sIGdldE93blByb3BlcnR5U2xvdChKU0M6OkpTQ2VsbCosIEpTQzo6RXhlY1N0YXRl
KiwgSlNDOjpQcm9wZXJ0eU5hbWUsIEpTQzo6UHJvcGVydHlTbG90Jik7XG4iKTsK
</data>
<flag name="review"
          id="196252"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>