Bug 155180 - Add proper JSON.stringify support for Proxy when the target is an array
Summary: Add proper JSON.stringify support for Proxy when the target is an array
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Saam Barati
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-08 11:43 PST by Saam Barati
Modified: 2016-03-09 23:57 PST (History)
11 users (show)

See Also:


Attachments
patch (10.48 KB, patch)
2016-03-09 17:35 PST, Saam Barati
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Saam Barati 2016-03-08 11:43:26 PST
...
Comment 1 Saam Barati 2016-03-09 17:35:35 PST
Created attachment 273519 [details]
patch
Comment 2 WebKit Commit Bot 2016-03-09 18:41:22 PST
Comment on attachment 273519 [details]
patch

Clearing flags on attachment: 273519

Committed r197918: <http://trac.webkit.org/changeset/197918>
Comment 3 WebKit Commit Bot 2016-03-09 18:41:26 PST
All reviewed patches have been landed.  Closing bug.
Comment 4 Mark Lam 2016-03-09 23:28:50 PST
Comment on attachment 273519 [details]
patch

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

> Source/JavaScriptCore/runtime/ArrayConstructor.h:91
> +    ASSERT_NOT_REACHED();

I didn't catch this before, but you should probably make this a RELEASE_ASSERT_NOT_REACHED().
Comment 5 Mark Lam 2016-03-09 23:57:46 PST
Comment on attachment 273519 [details]
patch

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

>> Source/JavaScriptCore/runtime/ArrayConstructor.h:91
>> +    ASSERT_NOT_REACHED();
> 
> I didn't catch this before, but you should probably make this a RELEASE_ASSERT_NOT_REACHED().

Nevermind.  Saam reminded me (offline) that this comes after an infinite loop.  Short of a compiler error, there's really no way to reach this point.  The debug assert is good enough if only for documentation (in case someone re-writes the loop in the future to not be an infinite loop).