<?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>210126</bug_id>
          
          <creation_ts>2020-04-07 09:50:12 -0700</creation_ts>
          <short_desc>[JSC] ScopedArgumentsTable should handle OOM in tolerant manner</short_desc>
          <delta_ts>2020-04-07 11:05:05 -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>New Bugs</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="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</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>1638593</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-07 09:50:12 -0700</bug_when>
    <thetext>[JSC] ScopedArgumentsTable should handle OOM in tolerant manner</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638595</commentid>
    <comment_count>1</comment_count>
      <attachid>395690</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-07 09:53:26 -0700</bug_when>
    <thetext>Created attachment 395690
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638598</commentid>
    <comment_count>2</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-07 09:54:03 -0700</bug_when>
    <thetext>&lt;rdar://problem/61385114&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638604</commentid>
    <comment_count>3</comment_count>
      <attachid>395690</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-04-07 10:02:41 -0700</bug_when>
    <thetext>Comment on attachment 395690
Patch

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

r=me

&gt; Source/JavaScriptCore/runtime/ScopedArguments.cpp:146
&gt; +    auto scope = DECLARE_THROW_SCOPE(vm);

You’re adding a ThrowScope.  Make sure to run JSC stress tests with a debug build (use --force-opt=O3 to run faster) to make sure there’s no new missing exception check failures.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638605</commentid>
    <comment_count>4</comment_count>
      <attachid>395690</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-07 10:04:00 -0700</bug_when>
    <thetext>Comment on attachment 395690
Patch

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

&gt;&gt; Source/JavaScriptCore/runtime/ScopedArguments.cpp:146
&gt;&gt; +    auto scope = DECLARE_THROW_SCOPE(vm);
&gt; 
&gt; You’re adding a ThrowScope.  Make sure to run JSC stress tests with a debug build (use --force-opt=O3 to run faster) to make sure there’s no new missing exception check failures.

I think this is OK since caller of unmapArgument has proper exception checks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1638650</commentid>
    <comment_count>5</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2020-04-07 11:05:05 -0700</bug_when>
    <thetext>Committed r259646: &lt;https://trac.webkit.org/changeset/259646&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395690</attachid>
            <date>2020-04-07 09:53:26 -0700</date>
            <delta_ts>2020-04-07 10:02:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210126-20200407095325.patch</filename>
            <type>text/plain</type>
            <size>12660</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NjM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAy
NTMyMmE0NGVkYWE5MjI0M2I5NjliNDlkN2MzOWEzYzY0NGY2N2I5Li43NzE0ZTNiNDZlMWI0YTNm
ODRiOWJkMzk4NmU4YzAwZTNmNmQwM2Y3IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAyMC0wNC0wNyAgWXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29t
PgorCisgICAgICAgIFtKU0NdIFNjb3BlZEFyZ3VtZW50c1RhYmxlIHNob3VsZCBoYW5kbGUgT09N
IGluIHRvbGVyYW50IG1hbm5lcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjEwMTI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhpcyBwYXRjaCBtYWtlcyBTY29wZWRBcmd1bWVudHNUYWJsZSBhbGxvY2F0
aW9ucyBPT00gdG9sZXJhbnQgdG8gdGhyb3cgT09NIGVycm9yIHdoZW4gYWxsb2NhdGlvbiBmYWls
cy4KKworICAgICAgICAqIGJ5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHA6CisgICAg
ICAgIChKU0M6OkJ5dGVjb2RlR2VuZXJhdG9yOjpCeXRlY29kZUdlbmVyYXRvcik6CisgICAgICAg
ICogcnVudGltZS9DYWNoZWRUeXBlcy5jcHA6CisgICAgICAgIChKU0M6OkNhY2hlZFNjb3BlZEFy
Z3VtZW50c1RhYmxlOjpkZWNvZGUgY29uc3QpOgorICAgICAgICAqIHJ1bnRpbWUvU2NvcGVkQXJn
dW1lbnRzLmNwcDoKKyAgICAgICAgKEpTQzo6U2NvcGVkQXJndW1lbnRzOjp1bm1hcEFyZ3VtZW50
KToKKyAgICAgICAgKiBydW50aW1lL1Njb3BlZEFyZ3VtZW50c1RhYmxlLmNwcDoKKyAgICAgICAg
KEpTQzo6U2NvcGVkQXJndW1lbnRzVGFibGU6OnRyeUNsb25lKToKKyAgICAgICAgKEpTQzo6U2Nv
cGVkQXJndW1lbnRzVGFibGU6OnRyeVNldExlbmd0aCk6CisgICAgICAgIChKU0M6OlNjb3BlZEFy
Z3VtZW50c1RhYmxlOjp0cnlTZXQpOgorICAgICAgICAoSlNDOjpTY29wZWRBcmd1bWVudHNUYWJs
ZTo6Y2xvbmUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpTY29wZWRBcmd1bWVudHNUYWJsZTo6
c2V0TGVuZ3RoKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6U2NvcGVkQXJndW1lbnRzVGFibGU6
OnNldCk6IERlbGV0ZWQuCisgICAgICAgICogcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5o
OgorICAgICAgICAqIHJ1bnRpbWUvU3ltYm9sVGFibGUuaDoKKwogMjAyMC0wNC0wNyAgWXVzdWtl
IFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIElubGluZWQgSUMg
c2hvdWxkIGdldCByaWdodCBKU0dsb2JhbE9iamVjdApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAppbmRleCBhMDFk
NDdkN2RjMGJjMWI0ODAxNjViYmNkMjY2ZDExYTZjMjMyYjQ1Li41ZDZiN2Y2NDAxM2Q3MmFjZjZj
MGQ5NmUzYzI4N2E5OTVjNTExNjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
Ynl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcApAQCAtNTA1LDcgKzUwNSwx
MSBAQCBCeXRlY29kZUdlbmVyYXRvcjo6Qnl0ZWNvZGVHZW5lcmF0b3IoVk0mIHZtLCBGdW5jdGlv
bk5vZGUqIGZ1bmN0aW9uTm9kZSwgVW5saW5rZQogICAgICAgICAgICAgLy8gd2F5IHdlIGxpZnQg
dGhlIHZhbHVlIGludG8gdGhlIHNjb3BlLgogICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0g
MDsgaSA8IHBhcmFtZXRlcnMuc2l6ZSgpOyArK2kpIHsKICAgICAgICAgICAgICAgICBTY29wZU9m
ZnNldCBvZmZzZXQgPSBmdW5jdGlvblN5bWJvbFRhYmxlLT50YWtlTmV4dFNjb3BlT2Zmc2V0KE5v
TG9ja2luZ05lY2Vzc2FyeSk7Ci0gICAgICAgICAgICAgICAgZnVuY3Rpb25TeW1ib2xUYWJsZS0+
c2V0QXJndW1lbnRPZmZzZXQodm0sIGksIG9mZnNldCk7CisgICAgICAgICAgICAgICAgYm9vbCBz
dWNjZXNzID0gZnVuY3Rpb25TeW1ib2xUYWJsZS0+dHJ5U2V0QXJndW1lbnRPZmZzZXQodm0sIGks
IG9mZnNldCk7CisgICAgICAgICAgICAgICAgaWYgKFVOTElLRUxZKCFzdWNjZXNzKSkgeworICAg
ICAgICAgICAgICAgICAgICBtX291dE9mTWVtb3J5RHVyaW5nQ29uc3RydWN0aW9uID0gdHJ1ZTsK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgICBpZiAoVW5pcXVlZFN0cmluZ0ltcGwqIG5hbWUgPSB2aXNpYmxlTmFtZUZvclBhcmFt
ZXRlcihwYXJhbWV0ZXJzLmF0KGkpLmZpcnN0KSkgewogICAgICAgICAgICAgICAgICAgICBWYXJP
ZmZzZXQgdmFyT2Zmc2V0KG9mZnNldCk7CiAgICAgICAgICAgICAgICAgICAgIFN5bWJvbFRhYmxl
RW50cnkgZW50cnkodmFyT2Zmc2V0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0NhY2hlZFR5cGVzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L0NhY2hlZFR5cGVzLmNwcAppbmRleCAyMjZiNDgzNTQ2MmQ4YzQ1ZTYxOWY2NjgwMGJlOTk3YTkx
YWU4OGExLi40OTdlODEzNDc0YmY5ODZlNGE2ZGY3NzFiMWNlMjM3ZGE2MWY2YWY4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9DYWNoZWRUeXBlcy5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ2FjaGVkVHlwZXMuY3BwCkBAIC0xMTIxLDcg
KzExMjEsOCBAQCBjbGFzcyBDYWNoZWRTY29wZWRBcmd1bWVudHNUYWJsZSA6IHB1YmxpYyBDYWNo
ZWRPYmplY3Q8U2NvcGVkQXJndW1lbnRzVGFibGU+IHsKIAogICAgIFNjb3BlZEFyZ3VtZW50c1Rh
YmxlKiBkZWNvZGUoRGVjb2RlciYgZGVjb2RlcikgY29uc3QKICAgICB7Ci0gICAgICAgIFNjb3Bl
ZEFyZ3VtZW50c1RhYmxlKiBzY29wZWRBcmd1bWVudHNUYWJsZSA9IFNjb3BlZEFyZ3VtZW50c1Rh
YmxlOjpjcmVhdGUoZGVjb2Rlci52bSgpLCBtX2xlbmd0aCk7CisgICAgICAgIFNjb3BlZEFyZ3Vt
ZW50c1RhYmxlKiBzY29wZWRBcmd1bWVudHNUYWJsZSA9IFNjb3BlZEFyZ3VtZW50c1RhYmxlOjp0
cnlDcmVhdGUoZGVjb2Rlci52bSgpLCBtX2xlbmd0aCk7CisgICAgICAgIFJFTEVBU0VfQVNTRVJU
KHNjb3BlZEFyZ3VtZW50c1RhYmxlKTsgLy8gV2UgY3Jhc2ggaGVyZS4gVGhpcyBpcyB1bmxpa2Vs
eSB0byBjb250aW51ZSBleGVjdXRpb24gaWYgd2UgaGl0IHRoaXMgY29uZGl0aW9uIHdoZW4gZGVj
b2RpbmcgVW5saW5rZWRDb2RlQmxvY2suCiAgICAgICAgIG1fYXJndW1lbnRzLmRlY29kZShkZWNv
ZGVyLCBzY29wZWRBcmd1bWVudHNUYWJsZS0+bV9hcmd1bWVudHMuZ2V0KG1fbGVuZ3RoKSwgbV9s
ZW5ndGgpOwogICAgICAgICByZXR1cm4gc2NvcGVkQXJndW1lbnRzVGFibGU7CiAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNw
cCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50cy5jcHAKaW5k
ZXggOWRkODFiOGVjODQyNDEwOGI1MTQ4N2QxZDdlNjIxOWZiODUzNDVmNi4uNjQyM2NlZDY1ZWU3
NDk4NjEwYTkyYzM2Mjk2NDU1MmUxZTNmMjY3OSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9TY29wZWRBcmd1bWVudHMuY3BwCkBAIC0xNDMsMTEgKzE0MywxNyBAQCB2
b2lkIFNjb3BlZEFyZ3VtZW50czo6b3ZlcnJpZGVUaGluZ3NJZk5lY2Vzc2FyeShKU0dsb2JhbE9i
amVjdCogZ2xvYmFsT2JqZWN0KQogdm9pZCBTY29wZWRBcmd1bWVudHM6OnVubWFwQXJndW1lbnQo
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgdWludDMyX3QgaSkKIHsKICAgICBWTSYgdm0g
PSBnbG9iYWxPYmplY3QtPnZtKCk7CisgICAgYXV0byBzY29wZSA9IERFQ0xBUkVfVEhST1dfU0NP
UEUodm0pOwogICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lNUExJQ0FUSU9OKGkgPCBtX3RvdGFs
TGVuZ3RoKTsKICAgICB1bnNpZ25lZCBuYW1lZExlbmd0aCA9IG1fdGFibGUtPmxlbmd0aCgpOwot
ICAgIGlmIChpIDwgbmFtZWRMZW5ndGgpCi0gICAgICAgIG1fdGFibGUuc2V0KHZtLCB0aGlzLCBt
X3RhYmxlLT5zZXQodm0sIGksIFNjb3BlT2Zmc2V0KCkpKTsKLSAgICBlbHNlCisgICAgaWYgKGkg
PCBuYW1lZExlbmd0aCkgeworICAgICAgICBhdXRvKiBtYXliZUNsb25lZCA9IG1fdGFibGUtPnRy
eVNldCh2bSwgaSwgU2NvcGVPZmZzZXQoKSk7CisgICAgICAgIGlmIChVTkxJS0VMWSghbWF5YmVD
bG9uZWQpKSB7CisgICAgICAgICAgICB0aHJvd091dE9mTWVtb3J5RXJyb3IoZ2xvYmFsT2JqZWN0
LCBzY29wZSk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgbV90YWJs
ZS5zZXQodm0sIHRoaXMsIG1heWJlQ2xvbmVkKTsKKyAgICB9IGVsc2UKICAgICAgICAgc3RvcmFn
ZSgpW2kgLSBuYW1lZExlbmd0aF0uY2xlYXIoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzVGFibGUuY3BwIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzVGFibGUuY3BwCmluZGV4IGI5YWZh
YzU1YjJmMzhmNzllMWRjZTk0ZmU3ZWU0MWFjMzczZmE2MTkuLjBkMjM4Y2RmMzBmY2M2MzdiZTRj
MGM4MzIxMTE0MmUxYWIyMDhlMGQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1Njb3BlZEFyZ3VtZW50c1RhYmxlLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9TY29wZWRBcmd1bWVudHNUYWJsZS5jcHAKQEAgLTU2LDE0ICs1Niw2IEBAIFNj
b3BlZEFyZ3VtZW50c1RhYmxlKiBTY29wZWRBcmd1bWVudHNUYWJsZTo6Y3JlYXRlKFZNJiB2bSkK
ICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1TY29wZWRBcmd1bWVudHNUYWJsZSogU2NvcGVkQXJn
dW1lbnRzVGFibGU6OmNyZWF0ZShWTSYgdm0sIHVpbnQzMl90IGxlbmd0aCkKLXsKLSAgICBTY29w
ZWRBcmd1bWVudHNUYWJsZSogcmVzdWx0ID0gY3JlYXRlKHZtKTsKLSAgICByZXN1bHQtPm1fbGVu
Z3RoID0gbGVuZ3RoOwotICAgIHJlc3VsdC0+bV9hcmd1bWVudHMgPSBBcmd1bWVudHNQdHI6OmNy
ZWF0ZShsZW5ndGgpOwotICAgIHJldHVybiByZXN1bHQ7Ci19Ci0KIFNjb3BlZEFyZ3VtZW50c1Rh
YmxlKiBTY29wZWRBcmd1bWVudHNUYWJsZTo6dHJ5Q3JlYXRlKFZNJiB2bSwgdWludDMyX3QgbGVu
Z3RoKQogewogICAgIHZvaWQqIGJ1ZmZlciA9IHRyeUFsbG9jYXRlQ2VsbDxTY29wZWRBcmd1bWVu
dHNUYWJsZT4odm0uaGVhcCk7CkBAIC03OSwxOCArNzEsMjIgQEAgU2NvcGVkQXJndW1lbnRzVGFi
bGUqIFNjb3BlZEFyZ3VtZW50c1RhYmxlOjp0cnlDcmVhdGUoVk0mIHZtLCB1aW50MzJfdCBsZW5n
dGgpCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAotU2NvcGVkQXJndW1lbnRzVGFibGUqIFNjb3Bl
ZEFyZ3VtZW50c1RhYmxlOjpjbG9uZShWTSYgdm0pCitTY29wZWRBcmd1bWVudHNUYWJsZSogU2Nv
cGVkQXJndW1lbnRzVGFibGU6OnRyeUNsb25lKFZNJiB2bSkKIHsKLSAgICBTY29wZWRBcmd1bWVu
dHNUYWJsZSogcmVzdWx0ID0gY3JlYXRlKHZtLCBtX2xlbmd0aCk7CisgICAgU2NvcGVkQXJndW1l
bnRzVGFibGUqIHJlc3VsdCA9IHRyeUNyZWF0ZSh2bSwgbV9sZW5ndGgpOworICAgIGlmIChVTkxJ
S0VMWSghcmVzdWx0KSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgZm9yICh1bnNpZ25l
ZCBpID0gbV9sZW5ndGg7IGktLTspCiAgICAgICAgIHJlc3VsdC0+YXQoaSkgPSB0aGlzLT5hdChp
KTsKICAgICByZXR1cm4gcmVzdWx0OwogfQogCi1TY29wZWRBcmd1bWVudHNUYWJsZSogU2NvcGVk
QXJndW1lbnRzVGFibGU6OnNldExlbmd0aChWTSYgdm0sIHVpbnQzMl90IG5ld0xlbmd0aCkKK1Nj
b3BlZEFyZ3VtZW50c1RhYmxlKiBTY29wZWRBcmd1bWVudHNUYWJsZTo6dHJ5U2V0TGVuZ3RoKFZN
JiB2bSwgdWludDMyX3QgbmV3TGVuZ3RoKQogewogICAgIGlmIChMSUtFTFkoIW1fbG9ja2VkKSkg
ewotICAgICAgICBBcmd1bWVudHNQdHIgbmV3QXJndW1lbnRzID0gQXJndW1lbnRzUHRyOjpjcmVh
dGUobmV3TGVuZ3RoLCBuZXdMZW5ndGgpOworICAgICAgICBBcmd1bWVudHNQdHIgbmV3QXJndW1l
bnRzID0gQXJndW1lbnRzUHRyOjp0cnlDcmVhdGUobmV3TGVuZ3RoLCBuZXdMZW5ndGgpOworICAg
ICAgICBpZiAoVU5MSUtFTFkoIW5ld0FyZ3VtZW50cykpCisgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gc3RkOjptaW4obV9sZW5ndGgsIG5ld0xl
bmd0aCk7IGktLTspCiAgICAgICAgICAgICBuZXdBcmd1bWVudHMuYXQoaSwgbmV3TGVuZ3RoKSA9
IHRoaXMtPmF0KGkpOwogICAgICAgICBtX2xlbmd0aCA9IG5ld0xlbmd0aDsKQEAgLTk4LDcgKzk0
LDkgQEAgU2NvcGVkQXJndW1lbnRzVGFibGUqIFNjb3BlZEFyZ3VtZW50c1RhYmxlOjpzZXRMZW5n
dGgoVk0mIHZtLCB1aW50MzJfdCBuZXdMZW5ndGgKICAgICAgICAgcmV0dXJuIHRoaXM7CiAgICAg
fQogICAgIAotICAgIFNjb3BlZEFyZ3VtZW50c1RhYmxlKiByZXN1bHQgPSBjcmVhdGUodm0sIG5l
d0xlbmd0aCk7CisgICAgU2NvcGVkQXJndW1lbnRzVGFibGUqIHJlc3VsdCA9IHRyeUNyZWF0ZSh2
bSwgbmV3TGVuZ3RoKTsKKyAgICBpZiAoVU5MSUtFTFkoIXJlc3VsdCkpCisgICAgICAgIHJldHVy
biBudWxscHRyOwogICAgIGZvciAodW5zaWduZWQgaSA9IHN0ZDo6bWluKG1fbGVuZ3RoLCBuZXdM
ZW5ndGgpOyBpLS07KQogICAgICAgICByZXN1bHQtPmF0KGkpID0gdGhpcy0+YXQoaSk7CiAgICAg
cmV0dXJuIHJlc3VsdDsKQEAgLTEwNiwxMiArMTA0LDE0IEBAIFNjb3BlZEFyZ3VtZW50c1RhYmxl
KiBTY29wZWRBcmd1bWVudHNUYWJsZTo6c2V0TGVuZ3RoKFZNJiB2bSwgdWludDMyX3QgbmV3TGVu
Z3RoCiAKIHN0YXRpY19hc3NlcnQoc3RkOjppc190cml2aWFsbHlfZGVzdHJ1Y3RpYmxlPFNjb3Bl
T2Zmc2V0Pjo6dmFsdWUsICIiKTsKIAotU2NvcGVkQXJndW1lbnRzVGFibGUqIFNjb3BlZEFyZ3Vt
ZW50c1RhYmxlOjpzZXQoVk0mIHZtLCB1aW50MzJfdCBpLCBTY29wZU9mZnNldCB2YWx1ZSkKK1Nj
b3BlZEFyZ3VtZW50c1RhYmxlKiBTY29wZWRBcmd1bWVudHNUYWJsZTo6dHJ5U2V0KFZNJiB2bSwg
dWludDMyX3QgaSwgU2NvcGVPZmZzZXQgdmFsdWUpCiB7CiAgICAgU2NvcGVkQXJndW1lbnRzVGFi
bGUqIHJlc3VsdDsKLSAgICBpZiAoVU5MSUtFTFkobV9sb2NrZWQpKQotICAgICAgICByZXN1bHQg
PSBjbG9uZSh2bSk7Ci0gICAgZWxzZQorICAgIGlmIChVTkxJS0VMWShtX2xvY2tlZCkpIHsKKyAg
ICAgICAgcmVzdWx0ID0gdHJ5Q2xvbmUodm0pOworICAgICAgICBpZiAoVU5MSUtFTFkoIXJlc3Vs
dCkpCisgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICB9IGVsc2UKICAgICAgICAgcmVz
dWx0ID0gdGhpczsKICAgICByZXN1bHQtPmF0KGkpID0gdmFsdWU7CiAgICAgcmV0dXJuIHJlc3Vs
dDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3Vt
ZW50c1RhYmxlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TY29wZWRBcmd1bWVu
dHNUYWJsZS5oCmluZGV4IGU0ODJhYzQxNzhiODY0MmY1NTcxZGI1Mjg0MGI4NWQwOTEyZmY1Y2Mu
LjgwODc4NWQ1YjMwNGYzN2NiZWQyY2EwMDk3ZWU0ZmNiOTkwNmRiNzIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL1Njb3BlZEFyZ3VtZW50c1RhYmxlLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU2NvcGVkQXJndW1lbnRzVGFibGUuaApAQCAt
NTksMTUgKzU5LDEyIEBAIGNsYXNzIFNjb3BlZEFyZ3VtZW50c1RhYmxlIGZpbmFsIDogcHVibGlj
IEpTQ2VsbCB7CiAKIHB1YmxpYzoKICAgICBzdGF0aWMgU2NvcGVkQXJndW1lbnRzVGFibGUqIGNy
ZWF0ZShWTSYpOwotICAgIHN0YXRpYyBTY29wZWRBcmd1bWVudHNUYWJsZSogY3JlYXRlKFZNJiwg
dWludDMyX3QgbGVuZ3RoKTsKICAgICBzdGF0aWMgU2NvcGVkQXJndW1lbnRzVGFibGUqIHRyeUNy
ZWF0ZShWTSYsIHVpbnQzMl90IGxlbmd0aCk7CiAKICAgICBzdGF0aWMgdm9pZCBkZXN0cm95KEpT
Q2VsbCopOwogCi0gICAgU2NvcGVkQXJndW1lbnRzVGFibGUqIGNsb25lKFZNJik7Ci0gICAgCiAg
ICAgdWludDMyX3QgbGVuZ3RoKCkgY29uc3QgeyByZXR1cm4gbV9sZW5ndGg7IH0KLSAgICBTY29w
ZWRBcmd1bWVudHNUYWJsZSogc2V0TGVuZ3RoKFZNJiwgdWludDMyX3QgbmV3TGVuZ3RoKTsKKyAg
ICBTY29wZWRBcmd1bWVudHNUYWJsZSogdHJ5U2V0TGVuZ3RoKFZNJiwgdWludDMyX3QgbmV3TGVu
Z3RoKTsKICAgICAKICAgICBTY29wZU9mZnNldCBnZXQodWludDMyX3QgaSkgY29uc3QgeyByZXR1
cm4gYXQoaSk7IH0KICAgICAKQEAgLTc2LDcgKzczLDcgQEAgY2xhc3MgU2NvcGVkQXJndW1lbnRz
VGFibGUgZmluYWwgOiBwdWJsaWMgSlNDZWxsIHsKICAgICAgICAgbV9sb2NrZWQgPSB0cnVlOwog
ICAgIH0KICAgICAKLSAgICBTY29wZWRBcmd1bWVudHNUYWJsZSogc2V0KFZNJiwgdWludDMyX3Qg
aW5kZXgsIFNjb3BlT2Zmc2V0KTsKKyAgICBTY29wZWRBcmd1bWVudHNUYWJsZSogdHJ5U2V0KFZN
JiwgdWludDMyX3QgaW5kZXgsIFNjb3BlT2Zmc2V0KTsKICAgICAKICAgICBERUNMQVJFX0lORk87
CiAgICAgCkBAIC04OCw2ICs4NSw4IEBAIGNsYXNzIFNjb3BlZEFyZ3VtZW50c1RhYmxlIGZpbmFs
IDogcHVibGljIEpTQ2VsbCB7CiAgICAgdHlwZWRlZiBDYWdlZFVuaXF1ZVB0cjxHaWdhY2FnZTo6
UHJpbWl0aXZlLCBTY29wZU9mZnNldD4gQXJndW1lbnRzUHRyOwogCiBwcml2YXRlOgorICAgIFNj
b3BlZEFyZ3VtZW50c1RhYmxlKiB0cnlDbG9uZShWTSYpOworCiAgICAgU2NvcGVPZmZzZXQmIGF0
KHVpbnQzMl90IGkpIGNvbnN0CiAgICAgewogICAgICAgICBBU1NFUlRfV0lUSF9TRUNVUklUWV9J
TVBMSUNBVElPTihpIDwgbV9sZW5ndGgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1l
L1N5bWJvbFRhYmxlLmgKaW5kZXggMmQ3ODZhNThjMDkzODBiMDIzMTUwZjA3ZTgyMjc2MjZjNmQ2
YTU5Ny4uZTIzNGQzMTRjNjllZDJkMTExMzIzOTE0YmEyN2QzZDkzMTU1MjY3NiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvU3ltYm9sVGFibGUuaAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9TeW1ib2xUYWJsZS5oCkBAIC02NDIsOCArNjQyLDEy
IEBAIGNsYXNzIFN5bWJvbFRhYmxlIGZpbmFsIDogcHVibGljIEpTQ2VsbCB7CiAgICAgICAgICAg
ICBpZiAoVU5MSUtFTFkoIXRhYmxlKSkKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgICAgICAgICBtX2FyZ3VtZW50cy5zZXQodm0sIHRoaXMsIHRhYmxlKTsKLSAgICAgICAgfSBl
bHNlCi0gICAgICAgICAgICBtX2FyZ3VtZW50cy5zZXQodm0sIHRoaXMsIG1fYXJndW1lbnRzLT5z
ZXRMZW5ndGgodm0sIGxlbmd0aCkpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgU2Nv
cGVkQXJndW1lbnRzVGFibGUqIHRhYmxlID0gbV9hcmd1bWVudHMtPnRyeVNldExlbmd0aCh2bSwg
bGVuZ3RoKTsKKyAgICAgICAgICAgIGlmIChVTkxJS0VMWSghdGFibGUpKQorICAgICAgICAgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIG1fYXJndW1lbnRzLnNldCh2bSwgdGhpcywg
dGFibGUpOworICAgICAgICB9CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KIApAQCAtNjUz
LDEwICs2NTcsMTQgQEAgY2xhc3MgU3ltYm9sVGFibGUgZmluYWwgOiBwdWJsaWMgSlNDZWxsIHsK
ICAgICAgICAgcmV0dXJuIG1fYXJndW1lbnRzLT5nZXQoaSk7CiAgICAgfQogICAgIAotICAgIHZv
aWQgc2V0QXJndW1lbnRPZmZzZXQoVk0mIHZtLCB1aW50MzJfdCBpLCBTY29wZU9mZnNldCBvZmZz
ZXQpCisgICAgYm9vbCB0cnlTZXRBcmd1bWVudE9mZnNldChWTSYgdm0sIHVpbnQzMl90IGksIFNj
b3BlT2Zmc2V0IG9mZnNldCkKICAgICB7CiAgICAgICAgIEFTU0VSVF9XSVRIX1NFQ1VSSVRZX0lN
UExJQ0FUSU9OKG1fYXJndW1lbnRzKTsKLSAgICAgICAgbV9hcmd1bWVudHMuc2V0KHZtLCB0aGlz
LCBtX2FyZ3VtZW50cy0+c2V0KHZtLCBpLCBvZmZzZXQpKTsKKyAgICAgICAgYXV0byogbWF5YmVD
bG9uZWQgPSBtX2FyZ3VtZW50cy0+dHJ5U2V0KHZtLCBpLCBvZmZzZXQpOworICAgICAgICBpZiAo
IW1heWJlQ2xvbmVkKQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICBtX2FyZ3Vt
ZW50cy5zZXQodm0sIHRoaXMsIG1heWJlQ2xvbmVkKTsKKyAgICAgICAgcmV0dXJuIHRydWU7CiAg
ICAgfQogICAgIAogICAgIFNjb3BlZEFyZ3VtZW50c1RhYmxlKiBhcmd1bWVudHMoKSBjb25zdApk
aWZmIC0tZ2l0IGEvSlNUZXN0cy9DaGFuZ2VMb2cgYi9KU1Rlc3RzL0NoYW5nZUxvZwppbmRleCAx
M2ZhODkwMTJmMGI2OGVkNzI4MmY0ODBiZTU0NGY2M2E5Yzc2NzFkLi5jODk1OTI4ODM5N2EyZDgy
Y2M3ZjZjZTk4NmM0YjQ0NzVhOGM1ZTdiIDEwMDY0NAotLS0gYS9KU1Rlc3RzL0NoYW5nZUxvZwor
KysgYi9KU1Rlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTA0LTA3ICBZdXN1
a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5jb20+CisKKyAgICAgICAgW0pTQ10gU2NvcGVkQXJn
dW1lbnRzVGFibGUgc2hvdWxkIGhhbmRsZSBPT00gaW4gdG9sZXJhbnQgbWFubmVyCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTAxMjYKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHN0cmVzcy9zY29wZWQt
YXJndW1lbnRzLXRhYmxlLXNob3VsZC1iZS10b2xlcmFudC1mb3Itb29tLmpzOiBBZGRlZC4KKyAg
ICAgICAgKGNhblRocm93KToKKyAgICAgICAgKGJhcik6CisgICAgICAgIChnZXQgYmFyKToKKyAg
ICAgICAgKGZvbyk6CisgICAgICAgIChpLmNhblRocm93KToKKwogMjAyMC0wNC0wNyAgWXVzdWtl
IFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIElubGluZWQgSUMg
c2hvdWxkIGdldCByaWdodCBKU0dsb2JhbE9iamVjdApkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJl
c3Mvc2NvcGVkLWFyZ3VtZW50cy10YWJsZS1zaG91bGQtYmUtdG9sZXJhbnQtZm9yLW9vbS5qcyBi
L0pTVGVzdHMvc3RyZXNzL3Njb3BlZC1hcmd1bWVudHMtdGFibGUtc2hvdWxkLWJlLXRvbGVyYW50
LWZvci1vb20uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDk0YjJiNTljMDFlODYxMmIyMTFkNzI2N2I2YTE4Nzc2
MDU5OTZhMwotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL3Njb3BlZC1hcmd1bWVu
dHMtdGFibGUtc2hvdWxkLWJlLXRvbGVyYW50LWZvci1vb20uanMKQEAgLTAsMCArMSw0MyBAQAor
Ly9AIHNraXAgaWYgJG1lbW9yeUxpbWl0ZWQKKy8vQCBzbG93IQorCitmdW5jdGlvbiBjYW5UaHJv
dyhmdW5jLCBlcnJvck1lc3NhZ2UpIHsKKyAgICB2YXIgZXJyb3JUaHJvd24gPSBmYWxzZTsKKyAg
ICB2YXIgZXJyb3IgPSBudWxsOworICAgIHRyeSB7CisgICAgICAgIGZ1bmMoKTsKKyAgICB9IGNh
dGNoIChlKSB7CisgICAgICAgIGVycm9yVGhyb3duID0gdHJ1ZTsKKyAgICAgICAgZXJyb3IgPSBl
OworICAgIH0KKyAgICBpZiAoZXJyb3JUaHJvd24gJiYgU3RyaW5nKGVycm9yKSAhPT0gZXJyb3JN
ZXNzYWdlKQorICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGJhZCBlcnJvcjogJHtTdHJpbmcoZXJy
b3IpfWApOworfQorCitjb25zdCBhMCA9IFtdOworYTAuX19wcm90b19fID0ge307CithMC5sZW5n
dGggPSAyKioyNjsKK09iamVjdC5kZWZpbmVQcm9wZXJ0eShhMCwgMCwge2dldDogYmFyfSk7CisK
K2Z1bmN0aW9uIGJhcigpIHsKKyAgICBuZXcgVWludDhBcnJheShhMCk7Cit9CisKK25ldyBQcm9t
aXNlKGJhcik7CisKK3RyeSB7CisgICAgZm9yIChsZXQgaT0wOyBpPDEwMDAwOyBpKyspIHsKKyAg
ICAgICAgbmV3IFVpbnQ4QXJyYXkoMTAwMDApOworICAgIH0KK30gY2F0Y2gge30KKworZnVuY3Rp
b24gZm9vKHgsIHksIHopIHsKKyAgICBkZWxldGUgYXJndW1lbnRzWzBdOworICAgIHdpdGggKE9i
amVjdCkge30KK30KKworZm9yIChsZXQgaT0wOyBpPDEwMDAwOyBpKyspIHsKKyAgICBjYW5UaHJv
dygoKSA9PiB7CisgICAgICAgIGZvbygwKTsKKyAgICB9LCBgRXJyb3I6IE91dCBvZiBtZW1vcnlg
KTsKK30K
</data>
<flag name="review"
          id="411103"
          type_id="1"
          status="+"
          setter="mark.lam"
    />
          </attachment>
      

    </bug>

</bugzilla>