<?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>154862</bug_id>
          
          <creation_ts>2016-03-01 10:33:59 -0800</creation_ts>
          <short_desc>Promise.prototype.then should use Symbol.species to construct the return Promise</short_desc>
          <delta_ts>2016-03-01 17:08:58 -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>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Keith Miller">keith_miller</reporter>
          <assigned_to name="Keith Miller">keith_miller</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1169487</commentid>
    <comment_count>0</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-03-01 10:33:59 -0800</bug_when>
    <thetext>Promise.prototype.then should use Symbol.species to construct the return Promise</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1169494</commentid>
    <comment_count>1</comment_count>
      <attachid>272575</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-03-01 10:50:13 -0800</bug_when>
    <thetext>Created attachment 272575
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1169647</commentid>
    <comment_count>2</comment_count>
      <attachid>272575</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2016-03-01 16:58:20 -0800</bug_when>
    <thetext>Comment on attachment 272575
Patch

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

&gt; Source/JavaScriptCore/builtins/PromisePrototype.js:46
&gt; +        var constructor = constructor[@symbolSpecies];

Style: remove the &quot;var&quot; here.

&gt; Source/JavaScriptCore/builtins/PromisePrototype.js:47
&gt; +        if (constructor == null)

Is this &quot;==&quot; instead of &quot;===&quot; on purpose for null/undefined case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1169650</commentid>
    <comment_count>3</comment_count>
      <attachid>272575</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-03-01 17:02:12 -0800</bug_when>
    <thetext>Comment on attachment 272575
Patch

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

&gt;&gt; Source/JavaScriptCore/builtins/PromisePrototype.js:46
&gt;&gt; +        var constructor = constructor[@symbolSpecies];
&gt; 
&gt; Style: remove the &quot;var&quot; here.

fixed.

&gt;&gt; Source/JavaScriptCore/builtins/PromisePrototype.js:47
&gt;&gt; +        if (constructor == null)
&gt; 
&gt; Is this &quot;==&quot; instead of &quot;===&quot; on purpose for null/undefined case?

Yeah.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1169655</commentid>
    <comment_count>4</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2016-03-01 17:08:58 -0800</bug_when>
    <thetext>Committed r197428: &lt;http://trac.webkit.org/changeset/197428&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>272575</attachid>
            <date>2016-03-01 10:50:13 -0800</date>
            <delta_ts>2016-03-01 16:58:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-154862-20160301104959.patch</filename>
            <type>text/plain</type>
            <size>4046</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTk3MzUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
Y2VjZTJmZTdjYjU3NTE5MTgwOGRhMjNkMTQ2ZDU2MTFlYWYwNGVjLi44YjNkNzY4NTc2NjMwMmVl
ZWI0MzIyYWE4YWZlN2UzMDYyMjdhZjhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMCBAQAorMjAxNi0wMy0wMSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KKworICAgICAgICBQcm9taXNlLnByb3RvdHlwZS50aGVuIHNob3VsZCB1c2UgU3ltYm9s
LnNwZWNpZXMgdG8gY29uc3RydWN0IHRoZSByZXR1cm4gUHJvbWlzZQorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU0ODYyCisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBidWlsdGlucy9Qcm9taXNlUHJvdG90
eXBlLmpzOgorICAgICAgICAqIHRlc3RzL3N0cmVzcy9wcm9taXNlLXNwZWNpZXMtZnVuY3Rpb25z
LmpzOiBBZGRlZC4KKyAgICAgICAgKFN5bWJvbC5zcGVjaWVzKToKKyAgICAgICAgKGlkKToKKyAg
ICAgICAgKGZ1bmNUaHJvd3MpOgorICAgICAgICAobWFrZUMpOgorICAgICAgICAodGVzdC5zcGVj
aWVzKToKKyAgICAgICAgKHRlc3Quc3BlY2llc1Rocm93cyk6CisgICAgICAgICh0ZXN0KToKKwog
MjAxNi0wMi0yOCAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CiAKICAgICAgICAg
TWFrZSBKU0Z1bmN0aW9uLm5hbWUgYWxsb2NhdGlvbiBmdWxseSBsYXp5LgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J1aWx0aW5zL1Byb21pc2VQcm90b3R5cGUuanMgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnVpbHRpbnMvUHJvbWlzZVByb3RvdHlwZS5qcwppbmRleCBlYzYw
NGI4MjgyNTI4NjE4M2IxZDA4NTk1ZWYzMTM2NjQ5ZmU2NmZiLi5jMGE0YzQ2NWNiNWE0NjRjYTRj
MzM2MWU2Nzc3ZTUzZGQwM2VhOTU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YnVpbHRpbnMvUHJvbWlzZVByb3RvdHlwZS5qcworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YnVpbHRpbnMvUHJvbWlzZVByb3RvdHlwZS5qcwpAQCAtMzcsOSArMzcsMTYgQEAgZnVuY3Rpb24g
dGhlbihvbkZ1bGZpbGxlZCwgb25SZWplY3RlZCkKICAgICBpZiAoIUBpc1Byb21pc2UodGhpcykp
CiAgICAgICAgIHRocm93IG5ldyBAVHlwZUVycm9yKCJ8dGhpc3wgaXMgbm90IGEgb2JqZWN0Iik7
CiAKLSAgICAvLyBGSVhNRTogRml4IHRoaXMgY29kZSB3aGVuIEBAc3BlY2llcyB3ZWxsLWtub3du
IHN5bWJvbCBpcyBsYW5kZWQuCi0gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE0NjYyNAogICAgIHZhciBjb25zdHJ1Y3RvciA9IHRoaXMuY29uc3RydWN0b3I7
CisgICAgaWYgKGNvbnN0cnVjdG9yID09PSBAdW5kZWZpbmVkKQorICAgICAgICBjb25zdHJ1Y3Rv
ciA9IEBQcm9taXNlOworICAgIGVsc2UgaWYgKCFAaXNPYmplY3QoY29uc3RydWN0b3IpKQorICAg
ICAgICB0aHJvdyBuZXcgQFR5cGVFcnJvcigifHRoaXN8LmNvbnN0cnVjdG9yIGlzIG5vdCBhbiBP
YmplY3Qgb3IgdW5kZWZpbmVkIik7CisgICAgZWxzZSB7CisgICAgICAgIHZhciBjb25zdHJ1Y3Rv
ciA9IGNvbnN0cnVjdG9yW0BzeW1ib2xTcGVjaWVzXTsKKyAgICAgICAgaWYgKGNvbnN0cnVjdG9y
ID09IG51bGwpCisgICAgICAgICAgICBjb25zdHJ1Y3RvciA9IEBQcm9taXNlOworICAgIH0KIAog
ICAgIHZhciByZXN1bHRDYXBhYmlsaXR5ID0gQG5ld1Byb21pc2VDYXBhYmlsaXR5KGNvbnN0cnVj
dG9yKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9w
cm9taXNlLXNwZWNpZXMtZnVuY3Rpb25zLmpzIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3Rz
L3N0cmVzcy9wcm9taXNlLXNwZWNpZXMtZnVuY3Rpb25zLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg2Mjg5MzAw
ZTk3NWI1MWUyM2M4YjM0YTg2YjA5MTVkY2U2NGViZmQKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL3Byb21pc2Utc3BlY2llcy1mdW5jdGlvbnMu
anMKQEAgLTAsMCArMSw3MiBAQAorQyA9IGNsYXNzIGV4dGVuZHMgUHJvbWlzZSB7IH0KK04gPSBj
bGFzcyB7IH0KK05bU3ltYm9sLnNwZWNpZXNdID0gZnVuY3Rpb24oKSB7IHRocm93ICJ0aGlzIHNo
b3VsZCBuZXZlciBiZSBjYWxsZWQiOyB9CisKK2Z1bmN0aW9uIGlkKHgpIHsgcmV0dXJuIHg7IH0K
KwordGVzdEZ1bmN0aW9ucyA9IFsKKyAgICBbUHJvbWlzZS5wcm90b3R5cGUudGhlbiwgW2lkXV0K
K107CisKK29ialByb3AgPSBPYmplY3QuZGVmaW5lUHJvcGVydHk7CisKK2Z1bmN0aW9uIGZ1bmNU
aHJvd3MoZnVuYywgYXJncykgeworICAgIHRyeSB7CisgICAgICAgIGZ1bmMuY2FsbCguLi5hcmdz
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICB9Cit9CisKK2Z1bmN0aW9uIG1ha2VDKCkgeworICAgIHJldHVybiBuZXcg
QyhmdW5jdGlvbihyZXNvbHZlKSB7IHJlc29sdmUoMSk7IH0pOworfQorCitmdW5jdGlvbiB0ZXN0
KHRlc3REYXRhKSB7CisgICAgInVzZSBzdHJpY3QiOworICAgIGxldCBbcHJvdG9GdW5jdGlvbiwg
YXJnc10gPSB0ZXN0RGF0YTsKKyAgICBsZXQgZm9vID0gbWFrZUMoKQorICAgIGxldCBuID0gbmV3
IE4oKTsKKworICAgIC8vIFRlc3QgcHJvbWlzZSBkZWZhdWx0cyBjYXNlcy4KKyAgICBmb28gPSBt
YWtlQygpOworCisgICAgb2JqUHJvcChDLCBTeW1ib2wuc3BlY2llcywgeyB2YWx1ZTogdW5kZWZp
bmVkLCB3cml0YWJsZTogdHJ1ZX0pOworICAgIGxldCBiYXIgPSBwcm90b0Z1bmN0aW9uLmNhbGwo
Zm9vLCAuLi5hcmdzKTsKKyAgICBpZiAoIShiYXIgaW5zdGFuY2VvZiBQcm9taXNlKSB8fCBiYXIg
aW5zdGFuY2VvZiBDKQorICAgICAgICB0aHJvdyBFcnJvcigpOworCisgICAgQ1tTeW1ib2wuc3Bl
Y2llc10gPSBudWxsOworICAgIGJhciA9IHByb3RvRnVuY3Rpb24uY2FsbChmb28sIC4uLmFyZ3Mp
OworICAgIGlmICghKGJhciBpbnN0YW5jZW9mIFByb21pc2UpIHx8IGJhciBpbnN0YW5jZW9mIEMp
CisgICAgICAgIHRocm93IEVycm9yKCk7CisKKyAgICAvLyBUZXN0IHNwZWNpZXMgaXMgY3VzdG9t
IGNvbnN0cnVjdG9yLgorICAgIGxldCBjYWxsZWQgPSBmYWxzZTsKKyAgICBmdW5jdGlvbiBzcGVj
aWVzKCkgeworICAgICAgICBjYWxsZWQgPSB0cnVlOworICAgICAgICByZXR1cm4gbmV3IEMoLi4u
YXJndW1lbnRzKTsKKyAgICB9CisKKyAgICBDW1N5bWJvbC5zcGVjaWVzXSA9IHNwZWNpZXM7Cisg
ICAgYmFyID0gcHJvdG9GdW5jdGlvbi5jYWxsKGZvbywgLi4uYXJncyk7CisKKyAgICBpZiAoIShi
YXIgaW5zdGFuY2VvZiBQcm9taXNlKSB8fCAhKGJhciBpbnN0YW5jZW9mIEMpIHx8ICFjYWxsZWQp
CisgICAgICAgIHRocm93IEVycm9yKCJmYWlsZWQgb24gIiArIHByb3RvRnVuY3Rpb24pOworCisg
ICAgZnVuY3Rpb24gc3BlY2llc1Rocm93cygpIHsKKyAgICAgICAgdGhyb3cgRXJyb3IoKTsKKyAg
ICB9CisKKyAgICBDW1N5bWJvbC5zcGVjaWVzXSA9IHNwZWNpZXNUaHJvd3M7CisgICAgaWYgKCFm
dW5jVGhyb3dzKHByb3RvRnVuY3Rpb24sIFtmb28sIC4uLmFyZ3NdKSkKKyAgICAgICAgdGhyb3cg
ImRpZG4ndCB0aHJvdyI7CisKKyAgICBDW1N5bWJvbC5zcGVjaWVzXSA9IHRydWU7CisgICAgaWYg
KCFmdW5jVGhyb3dzKHByb3RvRnVuY3Rpb24sIFtmb28sIC4uLmFyZ3NdKSkKKyAgICAgICAgdGhy
b3cgImRpZG4ndCB0aHJvdyI7CisKK30KKwordGVzdEZ1bmN0aW9ucy5mb3JFYWNoKHRlc3QpOwo=
</data>
<flag name="review"
          id="297342"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>