<?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>199395</bug_id>
          
          <creation_ts>2019-07-01 21:20:21 -0700</creation_ts>
          <short_desc>Exception from For..of loop destructured assignment eliminates TDZ checks in subsequent code</short_desc>
          <delta_ts>2019-07-02 23:01:14 -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="Michael Saboff">msaboff</reporter>
          <assigned_to name="Michael Saboff">msaboff</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1549459</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-07-01 21:20:21 -0700</bug_when>
    <thetext>If the assignment in a for..of loop header throws an exception before the actual assignment, the TDZ check for the variable doesn&apos;t happen and subsequent access to the variable will fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1549460</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-07-01 21:20:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/52452341&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1549462</commentid>
    <comment_count>2</comment_count>
      <attachid>373303</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-07-01 21:31:08 -0700</bug_when>
    <thetext>Created attachment 373303
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1549463</commentid>
    <comment_count>3</comment_count>
      <attachid>373303</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-07-01 21:52:17 -0700</bug_when>
    <thetext>Comment on attachment 373303
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:10
&gt; +        By saving the current state of the TDZ stack before processing the setting of 
&gt; +        the target values and then restoring afterwards, we won&apos;t optimize out
&gt; +        future TDZ checks.

Where were we missing the TDZ check? Does this make it so we emit TDZ checks for &quot;use&quot; in something like &quot;for (let o of arr) { use(o); }&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1549560</commentid>
    <comment_count>4</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-07-02 07:48:08 -0700</bug_when>
    <thetext>(In reply to Saam Barati from comment #3)
&gt; Comment on attachment 373303 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=373303&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/ChangeLog:10
&gt; &gt; +        By saving the current state of the TDZ stack before processing the setting of 
&gt; &gt; +        the target values and then restoring afterwards, we won&apos;t optimize out
&gt; &gt; +        future TDZ checks.
&gt; 
&gt; Where were we missing the TDZ check? Does this make it so we emit TDZ checks
&gt; for &quot;use&quot; in something like &quot;for (let o of arr) { use(o); }&quot;

We were missing TDZ checks in the case where the LHS of the for..of was a destructuring.  We will emit TDZ checks in two other cases where the LHS is a coercible assignment, for..in and a straight destructuring assignment.

I&apos;ll add that this is only for destructuring assignments to the change log.

This change doesn&apos;t emit any different code for your example.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1549565</commentid>
    <comment_count>5</comment_count>
      <attachid>373322</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-07-02 07:59:10 -0700</bug_when>
    <thetext>Created attachment 373322
Updated ChangeLog

I also updated the bug title to include that this is for destructured assignments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1549843</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2019-07-02 23:01:14 -0700</bug_when>
    <thetext>Committed r247088: &lt;https://trac.webkit.org/changeset/247088&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>373303</attachid>
            <date>2019-07-01 21:31:08 -0700</date>
            <delta_ts>2019-07-02 07:59:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>199395.patch</filename>
            <type>text/plain</type>
            <size>3469</size>
            <attacher name="Michael Saboff">msaboff</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDcwMzMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE2IEBACisyMDE5LTA3LTAxICBNaWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBw
bGUuY29tPgorCisgICAgICAgIEV4Y2VwdGlvbiBmcm9tIEZvci4ub2YgbG9vcCBhc3NpZ25tZW50
IGVsaW1pbmF0ZXMgVERaIGNoZWNrcyBpbiBzdWJzZXF1ZW50IGNvZGUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5OTM5NQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5ldyByZWdlc3Npb24gdGVzdC4KKwor
ICAgICAgICAqIHN0cmVzcy9mb3Itb2YtdGR6LXdpdGgtdHJ5LWNhdGNoLmpzOiBBZGRlZC4KKyAg
ICAgICAgKHRlc3QpOgorICAgICAgICAoaS5jYXRjaCk6CisKIDIwMTktMDctMDEgIFJ5YW4gSGFk
ZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGlu
ZyBvdXQgcjI0Njk0Ni4KSW5kZXg6IEpTVGVzdHMvc3RyZXNzL2Zvci1vZi10ZHotd2l0aC10cnkt
Y2F0Y2guanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy9zdHJlc3MvZm9yLW9mLXRkei13aXRoLXRy
eS1jYXRjaC5qcwkobm9uZXhpc3RlbnQpCisrKyBKU1Rlc3RzL3N0cmVzcy9mb3Itb2YtdGR6LXdp
dGgtdHJ5LWNhdGNoLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjIgQEAKKy8vIFRoaXMg
cmVncmVzc2lvbiB0ZXN0IGNoZWNrcyB0aGF0IGEgbGV0IGluIHRoZSBURFogc3RhdGUgaXMgaGFu
ZGxlZCBwcm9wZXJseQorLy8gd2l0aCBhIGZvci1vZiBpbiBhIHRyeSBhcyB3ZWxsIGFzIHRoZSBl
bnN1aW5nIGNhdGNoIGJsb2NrLgorCitmdW5jdGlvbiB0ZXN0KCkgeworICAgIHRyeSB7CisgICAg
ICAgIGZvciAoe299IG9mIFssIDBdKQorICAgICAgICAgICAgOworICAgIH0gY2F0Y2ggKGUpIHsK
KyAgICAgICAgb1swXSA9IDEuNTsKKyAgICB9CisgICAgbGV0IG8gPSB7CisgICAgfTsKK30KKwor
Zm9yIChpID0gMDsgaSA8IDEwMDA7IGkrKykgeworICAgIHRyeSB7CisgICAgICAgIHRlc3QoKTsK
KyAgICB9IGNhdGNoKGUpIHsKKyAgICAgICAgaWYgKGUgIT0gIlJlZmVyZW5jZUVycm9yOiBDYW5u
b3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGUuIikKKyAgICAgICAgICAgIHRocm93ICJF
eHBlY3RlZCBcIlJlZmVyZW5jZUVycm9yOiBDYW5ub3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFy
aWFibGUuXCIsIGJ1dCBnb3QgXCIiICsgZSArIlwiIjsKKyAgICB9Cit9CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NzAzMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAxOS0wNy0wMSAg
TWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKworICAgICAgICBFeGNlcHRpb24g
ZnJvbSBGb3IuLm9mIGxvb3AgYXNzaWdubWVudCBlbGltaW5hdGVzIFREWiBjaGVja3MgaW4gc3Vi
c2VxdWVudCBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xOTkzOTUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBCeSBzYXZpbmcgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIFREWiBzdGFjayBiZWZvcmUg
cHJvY2Vzc2luZyB0aGUgc2V0dGluZyBvZiAKKyAgICAgICAgdGhlIHRhcmdldCB2YWx1ZXMgYW5k
IHRoZW4gcmVzdG9yaW5nIGFmdGVyd2FyZHMsIHdlIHdvbid0IG9wdGltaXplIG91dAorICAgICAg
ICBmdXR1cmUgVERaIGNoZWNrcy4KKworICAgICAgICBBIHNpbWlsYXIgY2hhbmdlIHdhcyBkb25l
IGZvciBmb3IuLmluIGxvb3BzIGluIGNoYW5nZSBzZXQgcjIzMjIxOS4KKworICAgICAgICAqIGJ5
dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjpPYmplY3RQYXR0ZXJu
Tm9kZTo6YmluZFZhbHVlIGNvbnN0KToKKwogMjAxOS0wNy0wMSAgUnlhbiBIYWRkYWQgIDxyeWFu
aGFkZGFkQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMjQ2
OTQ2LgpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVn
ZW4uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIv
Tm9kZXNDb2RlZ2VuLmNwcAkocmV2aXNpb24gMjQ3MDMzKQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL2J5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MzA0
LDYgKzQzMDQsOSBAQCB2b2lkIE9iamVjdFBhdHRlcm5Ob2RlOjpiaW5kVmFsdWUoQnl0ZWNvCiAg
ICAgICAgIGFkZE1ldGhvZCA9IGdlbmVyYXRvci5lbWl0R2V0QnlJZChnZW5lcmF0b3IubmV3VGVt
cG9yYXJ5KCksIGV4Y2x1ZGVkTGlzdC5nZXQoKSwgZ2VuZXJhdG9yLnByb3BlcnR5TmFtZXMoKS5i
dWlsdGluTmFtZXMoKS5hZGRQcml2YXRlTmFtZSgpKTsKICAgICB9CiAKKyAgICBCeXRlY29kZUdl
bmVyYXRvcjo6UHJlc2VydmVkVERaU3RhY2sgcHJlc2VydmVkVERaU3RhY2s7CisgICAgZ2VuZXJh
dG9yLnByZXNlcnZlVERaU3RhY2socHJlc2VydmVkVERaU3RhY2spOworCiAgICAgZm9yIChzaXpl
X3QgaSA9IDA7IGkgPCBtX3RhcmdldFBhdHRlcm5zLnNpemUoKTsgaSsrKSB7CiAgICAgICAgIGNv
bnN0IGF1dG8mIHRhcmdldCA9IG1fdGFyZ2V0UGF0dGVybnNbaV07CiAgICAgICAgIGlmICh0YXJn
ZXQuYmluZGluZ1R5cGUgPT0gQmluZGluZ1R5cGU6OkVsZW1lbnQpIHsKQEAgLTQzNjYsNiArNDM2
OSw4IEBAIHZvaWQgT2JqZWN0UGF0dGVybk5vZGU6OmJpbmRWYWx1ZShCeXRlY28KICAgICAgICAg
ICAgIHRhcmdldC5wYXR0ZXJuLT5iaW5kVmFsdWUoZ2VuZXJhdG9yLCByZXN1bHQuZ2V0KCkpOwog
ICAgICAgICB9CiAgICAgfQorCisgICAgZ2VuZXJhdG9yLnJlc3RvcmVURFpTdGFjayhwcmVzZXJ2
ZWRURFpTdGFjayk7CiB9CiAKIHZvaWQgT2JqZWN0UGF0dGVybk5vZGU6OmNvbGxlY3RCb3VuZElk
ZW50aWZpZXJzKFZlY3RvcjxJZGVudGlmaWVyPiYgaWRlbnRpZmllcnMpIGNvbnN0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>373322</attachid>
            <date>2019-07-02 07:59:10 -0700</date>
            <delta_ts>2019-07-02 13:59:38 -0700</delta_ts>
            <desc>Updated ChangeLog</desc>
            <filename>199395-2.patch</filename>
            <type>text/plain</type>
            <size>3810</size>
            <attacher name="Michael Saboff">msaboff</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNDcwMzMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE2IEBACisyMDE5LTA3LTAxICBNaWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBw
bGUuY29tPgorCisgICAgICAgIEV4Y2VwdGlvbiBmcm9tIEZvci4ub2YgbG9vcCBhc3NpZ25tZW50
IGVsaW1pbmF0ZXMgVERaIGNoZWNrcyBpbiBzdWJzZXF1ZW50IGNvZGUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5OTM5NQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5ldyByZWdlc3Npb24gdGVzdC4KKwor
ICAgICAgICAqIHN0cmVzcy9mb3Itb2YtdGR6LXdpdGgtdHJ5LWNhdGNoLmpzOiBBZGRlZC4KKyAg
ICAgICAgKHRlc3QpOgorICAgICAgICAoaS5jYXRjaCk6CisKIDIwMTktMDctMDEgIFJ5YW4gSGFk
ZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGlu
ZyBvdXQgcjI0Njk0Ni4KSW5kZXg6IEpTVGVzdHMvc3RyZXNzL2Zvci1vZi10ZHotd2l0aC10cnkt
Y2F0Y2guanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gSlNUZXN0cy9zdHJlc3MvZm9yLW9mLXRkei13aXRoLXRy
eS1jYXRjaC5qcwkobm9uZXhpc3RlbnQpCisrKyBKU1Rlc3RzL3N0cmVzcy9mb3Itb2YtdGR6LXdp
dGgtdHJ5LWNhdGNoLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjIgQEAKKy8vIFRoaXMg
cmVncmVzc2lvbiB0ZXN0IGNoZWNrcyB0aGF0IGEgbGV0IGluIHRoZSBURFogc3RhdGUgaXMgaGFu
ZGxlZCBwcm9wZXJseQorLy8gd2l0aCBhIGZvci1vZiBpbiBhIHRyeSBhcyB3ZWxsIGFzIHRoZSBl
bnN1aW5nIGNhdGNoIGJsb2NrLgorCitmdW5jdGlvbiB0ZXN0KCkgeworICAgIHRyeSB7CisgICAg
ICAgIGZvciAoe299IG9mIFssIDBdKQorICAgICAgICAgICAgOworICAgIH0gY2F0Y2ggKGUpIHsK
KyAgICAgICAgb1swXSA9IDEuNTsKKyAgICB9CisgICAgbGV0IG8gPSB7CisgICAgfTsKK30KKwor
Zm9yIChpID0gMDsgaSA8IDEwMDA7IGkrKykgeworICAgIHRyeSB7CisgICAgICAgIHRlc3QoKTsK
KyAgICB9IGNhdGNoKGUpIHsKKyAgICAgICAgaWYgKGUgIT0gIlJlZmVyZW5jZUVycm9yOiBDYW5u
b3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFyaWFibGUuIikKKyAgICAgICAgICAgIHRocm93ICJF
eHBlY3RlZCBcIlJlZmVyZW5jZUVycm9yOiBDYW5ub3QgYWNjZXNzIHVuaW5pdGlhbGl6ZWQgdmFy
aWFibGUuXCIsIGJ1dCBnb3QgXCIiICsgZSArIlwiIjsKKyAgICB9Cit9CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NzAzMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyNCBAQAorMjAxOS0wNy0wMSAg
TWljaGFlbCBTYWJvZmYgIDxtc2Fib2ZmQGFwcGxlLmNvbT4KKworICAgICAgICBFeGNlcHRpb24g
ZnJvbSBGb3IuLm9mIGxvb3AgZGVzdHJ1Y3R1cmVkIGFzc2lnbm1lbnQgZWxpbWluYXRlcyBURFog
Y2hlY2tzIGluIHN1YnNlcXVlbnQgY29kZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTk5Mzk1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgRm9yIGRlc3RydWN0dXJpbmcgYXNzaWdubWVzdHMsIHRoZSBhc3Np
Z25tZW50IG1pZ2h0IHRocm93IGEgcmVmZXJlbmNlIGVycm9yIGlmCisgICAgICAgIHRoZSBSSFMg
Y2Fubm90IGJlIGNvZXJjZWQuICBUaGUgY3VycmVudCBieXRlY29kZSBnZW5lcmF0ZWQgZm9yIHN1
Y2ggYXNzaWdubWVudHMKKyAgICAgICAgb3B0aW1pemVzIG91dCB0aGUgVERaIGNoZWNrIGFmdGVy
IHRoZSBjb2VyY2libGUgY2hlY2suCisKKyAgICAgICAgQnkgc2F2aW5nIHRoZSBjdXJyZW50IHN0
YXRlIG9mIHRoZSBURFogc3RhY2sgYmVmb3JlIHByb2Nlc3NpbmcgdGhlIHNldHRpbmcgb2YgCisg
ICAgICAgIHRhcmdldCBkZXN0cnVjdHVyZWQgdmFsdWVzIGFuZCB0aGVuIHJlc3RvcmluZyBhZnRl
cndhcmRzLCB3ZSB3b24ndCBvcHRpbWl6ZSBvdXQKKyAgICAgICAgbGF0ZXIgVERaIGNoZWNrKHMp
LgorCisgICAgICAgIEEgc2ltaWxhciBjaGFuZ2Ugb2Ygc2F2aW5nIC8gcmVzdG9yaW5nIHRoZSBU
RFogc3RhY2sgd2hlcmUgZXhjZXB0aW9ucyBtaWdodAorICAgICAgICBoYXBwZW4gd2FzIGRvbmUg
Zm9yIGZvci4uaW4gbG9vcHMgaW4gY2hhbmdlIHNldCByMjMyMjE5LgorCisgICAgICAgICogYnl0
ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5jcHA6CisgICAgICAgIChKU0M6Ok9iamVjdFBhdHRlcm5O
b2RlOjpiaW5kVmFsdWUgY29uc3QpOgorCiAyMDE5LTA3LTAxICBSeWFuIEhhZGRhZCAgPHJ5YW5o
YWRkYWRAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIyNDY5
NDYuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdl
bi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9O
b2Rlc0NvZGVnZW4uY3BwCShyZXZpc2lvbiAyNDcwMzMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdlbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzMDQs
NiArNDMwNCw5IEBAIHZvaWQgT2JqZWN0UGF0dGVybk5vZGU6OmJpbmRWYWx1ZShCeXRlY28KICAg
ICAgICAgYWRkTWV0aG9kID0gZ2VuZXJhdG9yLmVtaXRHZXRCeUlkKGdlbmVyYXRvci5uZXdUZW1w
b3JhcnkoKSwgZXhjbHVkZWRMaXN0LmdldCgpLCBnZW5lcmF0b3IucHJvcGVydHlOYW1lcygpLmJ1
aWx0aW5OYW1lcygpLmFkZFByaXZhdGVOYW1lKCkpOwogICAgIH0KIAorICAgIEJ5dGVjb2RlR2Vu
ZXJhdG9yOjpQcmVzZXJ2ZWRURFpTdGFjayBwcmVzZXJ2ZWRURFpTdGFjazsKKyAgICBnZW5lcmF0
b3IucHJlc2VydmVURFpTdGFjayhwcmVzZXJ2ZWRURFpTdGFjayk7CisKICAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IG1fdGFyZ2V0UGF0dGVybnMuc2l6ZSgpOyBpKyspIHsKICAgICAgICAgY29u
c3QgYXV0byYgdGFyZ2V0ID0gbV90YXJnZXRQYXR0ZXJuc1tpXTsKICAgICAgICAgaWYgKHRhcmdl
dC5iaW5kaW5nVHlwZSA9PSBCaW5kaW5nVHlwZTo6RWxlbWVudCkgewpAQCAtNDM2Niw2ICs0MzY5
LDggQEAgdm9pZCBPYmplY3RQYXR0ZXJuTm9kZTo6YmluZFZhbHVlKEJ5dGVjbwogICAgICAgICAg
ICAgdGFyZ2V0LnBhdHRlcm4tPmJpbmRWYWx1ZShnZW5lcmF0b3IsIHJlc3VsdC5nZXQoKSk7CiAg
ICAgICAgIH0KICAgICB9CisKKyAgICBnZW5lcmF0b3IucmVzdG9yZVREWlN0YWNrKHByZXNlcnZl
ZFREWlN0YWNrKTsKIH0KIAogdm9pZCBPYmplY3RQYXR0ZXJuTm9kZTo6Y29sbGVjdEJvdW5kSWRl
bnRpZmllcnMoVmVjdG9yPElkZW50aWZpZXI+JiBpZGVudGlmaWVycykgY29uc3QK
</data>
<flag name="review"
          id="389086"
          type_id="1"
          status="+"
          setter="fpizlo"
    />
          </attachment>
      

    </bug>

</bugzilla>