<?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>179619</bug_id>
          
          <creation_ts>2017-11-13 10:49:05 -0800</creation_ts>
          <short_desc>Make the jsc shell loadGetterFromGetterSetter() function more robust.</short_desc>
          <delta_ts>2017-11-13 12:18:40 -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>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="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1370948</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-13 10:49:05 -0800</bug_when>
    <thetext>This helps avoid false positives due to abuse of this test function when doing crashes.

&lt;rdar://problem/35492518&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1370974</commentid>
    <comment_count>1</comment_count>
      <attachid>326776</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-13 11:38:07 -0800</bug_when>
    <thetext>Created attachment 326776
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1370980</commentid>
    <comment_count>2</comment_count>
      <attachid>326776</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-11-13 11:42:30 -0800</bug_when>
    <thetext>Comment on attachment 326776
proposed patch.

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

&gt; Source/JavaScriptCore/jsc.cpp:3030
&gt; +    if (UNLIKELY(exec-&gt;argumentCount() &lt; 1)) {
&gt; +        throwTypeError(exec, scope, ASCIILiteral(&quot;Invalid use of loadGetterFromGetterSetter test function: missing argument&quot;));
&gt; +        return encodedJSValue();
&gt; +    }

This is unneeded unless you really care about the error message. This will fall out of the check below.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1370993</commentid>
    <comment_count>3</comment_count>
      <attachid>326776</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-13 12:06:19 -0800</bug_when>
    <thetext>Comment on attachment 326776
proposed patch.

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

Thanks for the review.

&gt;&gt; Source/JavaScriptCore/jsc.cpp:3030
&gt;&gt; +    }
&gt; 
&gt; This is unneeded unless you really care about the error message. This will fall out of the check below.

I will remove this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1370998</commentid>
    <comment_count>4</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-11-13 12:18:40 -0800</bug_when>
    <thetext>Landed in r224770: &lt;http://trac.webkit.org/r224770&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>326776</attachid>
            <date>2017-11-13 11:38:07 -0800</date>
            <delta_ts>2017-11-13 11:42:30 -0800</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-179619.patch</filename>
            <type>text/plain</type>
            <size>4669</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyMjQ3NjMpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDEzIEBACisyMDE3LTExLTEzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNv
bT4KKworICAgICAgICBNYWtlIHRoZSBqc2Mgc2hlbGwgbG9hZEdldHRlckZyb21HZXR0ZXJTZXR0
ZXIoKSBmdW5jdGlvbiBtb3JlIHJvYnVzdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE3OTYxOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzU0OTI1
MTg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBz
dHJlc3MvcmVncmVzcy0xNzk2MTkuanM6IEFkZGVkLgorCiAyMDE3LTExLTEyICBNYXJrIExhbSAg
PG1hcmsubGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBXZSBzaG91bGQgZW5zdXJlIHRoYXQgb3Bl
cmF0aW9uU3RyQ2F0MiBhbmQgb3BlcmF0aW9uU3RyQ2F0MyBhcmUgbmV2ZXIgcGFzc2VkIFN5bWJv
bHMgYXMgYXJndW1lbnRzLgpJbmRleDogSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xNzk2MTkuanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xNzk2MTkuanMJKG5vbmV4aXN0
ZW50KQorKysgSlNUZXN0cy9zdHJlc3MvcmVncmVzcy0xNzk2MTkuanMJKHdvcmtpbmcgY29weSkK
QEAgLTAsMCArMSw2NCBAQAorLy9AIHJ1bkRlZmF1bHQKKwordmFyIGV4Y2VwdGlvbjsKK3ZhciBn
ZXR0ZXI7CisKK3RyeSB7CisgICAgZ2V0dGVyID0gbG9hZEdldHRlckZyb21HZXR0ZXJTZXR0ZXIo
KTsKK30gY2F0Y2ggKGUpIHsKKyAgICBleGNlcHRpb24gPSBlOworfQoraWYgKGV4Y2VwdGlvbiAh
PSAiVHlwZUVycm9yOiBJbnZhbGlkIHVzZSBvZiBsb2FkR2V0dGVyRnJvbUdldHRlclNldHRlciB0
ZXN0IGZ1bmN0aW9uOiBtaXNzaW5nIGFyZ3VtZW50IikKKyAgICB0aHJvdyAiRkFJTEVEIjsKK2lm
IChnZXR0ZXIpCisgICAgdGhyb3cgIkZBSUxFRDogdW5leHBlY3RlZCByZXN1bHQiOworZXhjZXB0
aW9uID0gdW5kZWZpbmVkOworCit0cnkgeworICAgIGdldHRlciA9IGxvYWRHZXR0ZXJGcm9tR2V0
dGVyU2V0dGVyKHVuZGVmaW5lZCk7Cit9IGNhdGNoIChlKSB7CisgICAgZXhjZXB0aW9uID0gZTsK
K30KK2lmIChleGNlcHRpb24gIT0gIlR5cGVFcnJvcjogSW52YWxpZCB1c2Ugb2YgbG9hZEdldHRl
ckZyb21HZXR0ZXJTZXR0ZXIgdGVzdCBmdW5jdGlvbjogYXJndW1lbnQgaXMgbm90IGEgR2V0dGVy
U2V0dGVyIikKKyAgICB0aHJvdyAiRkFJTEVEIjsKK2lmIChnZXR0ZXIpCisgICAgdGhyb3cgIkZB
SUxFRDogdW5leHBlY3RlZCByZXN1bHQiOworZXhjZXB0aW9uID0gdW5kZWZpbmVkOworCitmdW5j
dGlvbiB0cnlHZXRCeUlkVGV4dChwcm9wZXJ0eU5hbWUpIHsgcmV0dXJuIGAoZnVuY3Rpb24gKGJh
c2UpIHsgcmV0dXJuIEB0cnlHZXRCeUlkKGJhc2UsICcke3Byb3BlcnR5TmFtZX0nKTsgfSlgOyB9
CitsZXQgZ2V0U2V0dGVyR2V0dGVyID0gY3JlYXRlQnVpbHRpbih0cnlHZXRCeUlkVGV4dCgiYmFy
IikpOworCit0cnkgeworICAgIG5vR2V0dGVyU2V0dGVyID0geyB9OworICAgIGdldHRlciA9IGxv
YWRHZXR0ZXJGcm9tR2V0dGVyU2V0dGVyKGdldFNldHRlckdldHRlcihub0dldHRlclNldHRlciwg
ImJhciIpKTsKK30gY2F0Y2ggKGUpIHsKKyAgICBleGNlcHRpb24gPSBlOworfQoraWYgKGV4Y2Vw
dGlvbiAhPSAiVHlwZUVycm9yOiBJbnZhbGlkIHVzZSBvZiBsb2FkR2V0dGVyRnJvbUdldHRlclNl
dHRlciB0ZXN0IGZ1bmN0aW9uOiBhcmd1bWVudCBpcyBub3QgYSBHZXR0ZXJTZXR0ZXIiKQorICAg
IHRocm93ICJGQUlMRUQiOworaWYgKGdldHRlcikKKyAgICB0aHJvdyAiRkFJTEVEOiB1bmV4cGVj
dGVkIHJlc3VsdCI7CitleGNlcHRpb24gPSB1bmRlZmluZWQ7CisKK3RyeSB7CisgICAgaGFzR2V0
dGVyID0geyBnZXQgYmFyKCkgeyByZXR1cm4gMjI7IH0gfTsKKyAgICBnZXR0ZXIgPSBsb2FkR2V0
dGVyRnJvbUdldHRlclNldHRlcihnZXRTZXR0ZXJHZXR0ZXIoaGFzR2V0dGVyLCAiYmFyIikpOwor
fSBjYXRjaCAoZSkgeworICAgIGV4Y2VwdGlvbiA9IGU7Cit9CitpZiAoZXhjZXB0aW9uKQorICAg
IHRocm93ICJGQUlMRUQ6IHVuZXhwZWN0ZWQgZXhjZXB0aW9uOiAiICsgZXhjZXB0aW9uOworaWYg
KCFnZXR0ZXIpCisgICAgdGhyb3cgIkZBSUxFRDogdW5hYmxlIHRvIGdldCBnZXR0ZXIiOworCit0
cnkgeworICAgIC8vIFdoZW4gYSBnZXR0ZXIgaXMgbm90IHNwZWNpZmllZCwgYSBkZWZhdWx0IGdl
dHRlciBzaG91bGQgYmUgYXNzaWduZWQgYXMgbG9uZyBhcyB0aGVyZSdzIGFsc28gYSBzZXR0ZXIu
CisgICAgaGFzU2V0dGVyID0geyBzZXQgYmFyKHgpIHsgcmV0dXJuIDIyOyB9IH07CisgICAgZ2V0
dGVyID0gbG9hZEdldHRlckZyb21HZXR0ZXJTZXR0ZXIoZ2V0U2V0dGVyR2V0dGVyKGhhc1NldHRl
ciwgImJhciIpKTsKK30gY2F0Y2ggKGUpIHsKKyAgICBleGNlcHRpb24gPSBlOworfQoraWYgKGV4
Y2VwdGlvbikKKyAgICB0aHJvdyAiRkFJTEVEOiB1bmV4cGVjdGVkIGV4Y2VwdGlvbjogIiArIGV4
Y2VwdGlvbjsKK2lmICghZ2V0dGVyKQorICAgIHRocm93ICJGQUlMRUQ6IHVuZXhwZWN0ZWQgcmVz
dWx0IjsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjI0NzM1KQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDE0IEBACisyMDE3LTExLTEzICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAg
ICAgICBNYWtlIHRoZSBqc2Mgc2hlbGwgbG9hZEdldHRlckZyb21HZXR0ZXJTZXR0ZXIoKSBmdW5j
dGlvbiBtb3JlIHJvYnVzdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3OTYxOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzU0OTI1MTg+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBqc2MuY3BwOgor
ICAgICAgICAoZnVuY3Rpb25Mb2FkR2V0dGVyRnJvbUdldHRlclNldHRlcik6CisKIDIwMTctMTEt
MTIgIE1hcmsgTGFtICA8bWFyay5sYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFdlIHNob3VsZCBl
bnN1cmUgdGhhdCBvcGVyYXRpb25TdHJDYXQyIGFuZCBvcGVyYXRpb25TdHJDYXQzIGFyZSBuZXZl
ciBwYXNzZWQgU3ltYm9scyBhcyBhcmd1bWVudHMuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvanNjLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAko
cmV2aXNpb24gMjI0NzM0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTMwMjIsOSArMzAyMiwxOSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9D
QUxMIGZ1bmN0aW9uRmxhCiBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGZ1bmN0aW9uTG9h
ZEdldHRlckZyb21HZXR0ZXJTZXR0ZXIoRXhlY1N0YXRlKiBleGVjKQogewogICAgIFZNJiB2bSA9
IGV4ZWMtPnZtKCk7Ci0gICAgUkVMRUFTRV9BU1NFUlQoZXhlYy0+YXJndW1lbnRDb3VudCgpID49
IDEpOworICAgIGF1dG8gc2NvcGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKHZtKTsKKworICAgIGlm
IChVTkxJS0VMWShleGVjLT5hcmd1bWVudENvdW50KCkgPCAxKSkgeworICAgICAgICB0aHJvd1R5
cGVFcnJvcihleGVjLCBzY29wZSwgQVNDSUlMaXRlcmFsKCJJbnZhbGlkIHVzZSBvZiBsb2FkR2V0
dGVyRnJvbUdldHRlclNldHRlciB0ZXN0IGZ1bmN0aW9uOiBtaXNzaW5nIGFyZ3VtZW50IikpOwor
ICAgICAgICByZXR1cm4gZW5jb2RlZEpTVmFsdWUoKTsKKyAgICB9CisgICAgICAgIAogICAgIEdl
dHRlclNldHRlciogZ2V0dGVyU2V0dGVyID0ganNEeW5hbWljQ2FzdDxHZXR0ZXJTZXR0ZXIqPih2
bSwgZXhlYy0+YXJndW1lbnQoMCkpOwotICAgIFJFTEVBU0VfQVNTRVJUKGdldHRlclNldHRlcik7
CisgICAgaWYgKFVOTElLRUxZKCFnZXR0ZXJTZXR0ZXIpKSB7CisgICAgICAgIHRocm93VHlwZUVy
cm9yKGV4ZWMsIHNjb3BlLCBBU0NJSUxpdGVyYWwoIkludmFsaWQgdXNlIG9mIGxvYWRHZXR0ZXJG
cm9tR2V0dGVyU2V0dGVyIHRlc3QgZnVuY3Rpb246IGFyZ3VtZW50IGlzIG5vdCBhIEdldHRlclNl
dHRlciIpKTsKKyAgICAgICAgcmV0dXJuIGVuY29kZWRKU1ZhbHVlKCk7CisgICAgfQorCiAgICAg
SlNPYmplY3QqIGdldHRlciA9IGdldHRlclNldHRlci0+Z2V0dGVyKCk7CiAgICAgUkVMRUFTRV9B
U1NFUlQoZ2V0dGVyKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGdldHRlcik7Cg==
</data>
<flag name="review"
          id="346045"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>