Bug 197324 - JSWrapperMap should check if existing prototype properties are wrappers when copying exported methods.
Summary: JSWrapperMap should check if existing prototype properties are wrappers when ...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Keith Miller
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2019-04-26 14:06 PDT by Keith Miller
Modified: 2019-05-06 18:24 PDT (History)
6 users (show)

See Also:


Attachments
Patch (6.20 KB, patch)
2019-04-30 08:33 PDT, Keith Miller
no flags Details | Formatted Diff | Diff
Patch (6.24 KB, patch)
2019-04-30 08:44 PDT, Keith Miller
no flags Details | Formatted Diff | Diff
Archive of layout-test-results from ews117 for mac-highsierra (3.15 MB, application/zip)
2019-04-30 10:34 PDT, EWS Watchlist
no flags Details
Patch for landing (5.95 KB, patch)
2019-05-06 17:44 PDT, Keith Miller
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Keith Miller 2019-04-26 14:06:24 PDT
JSWrapperMap should only look for own properties on prototypes.
Comment 1 Keith Miller 2019-04-30 08:33:12 PDT
Created attachment 368567 [details]
Patch
Comment 2 Keith Miller 2019-04-30 08:44:18 PDT
Created attachment 368569 [details]
Patch
Comment 3 EWS Watchlist 2019-04-30 10:34:54 PDT
Comment on attachment 368569 [details]
Patch

Attachment 368569 [details] did not pass mac-debug-ews (mac):
Output: https://webkit-queues.webkit.org/results/12041744

New failing tests:
webaudio/oscillator-ended.html
Comment 4 EWS Watchlist 2019-04-30 10:34:55 PDT
Created attachment 368577 [details]
Archive of layout-test-results from ews117 for mac-highsierra

The attached test failures were seen while running run-webkit-tests on the mac-debug-ews.
Bot: ews117  Port: mac-highsierra  Platform: Mac OS X 10.13.6
Comment 5 Saam Barati 2019-04-30 11:04:16 PDT
Comment on attachment 368569 [details]
Patch

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

r=me

> Source/JavaScriptCore/ChangeLog:12
> +        property. Normally this would only happen if a Objective-C super

a => an

> Source/JavaScriptCore/ChangeLog:15
> +        Object.protype the overriden method won't be exported.

protype => prototype

> Source/JavaScriptCore/API/JSWrapperMap.mm:274
> +            bool hasProperty = jsObject->getPropertySlot(exec, JSC::Identifier::fromString(exec, String(name)), slot);

what about exceptions? Maybe you wanted VMInquiry above?

> Source/JavaScriptCore/API/tests/testapi.mm:2541
> +- (BOOL)other;

is this needed?
Comment 6 Keith Miller 2019-05-06 17:44:42 PDT
Created attachment 369211 [details]
Patch for landing
Comment 7 WebKit Commit Bot 2019-05-06 18:23:45 PDT
Comment on attachment 369211 [details]
Patch for landing

Clearing flags on attachment: 369211

Committed r244999: <https://trac.webkit.org/changeset/244999>
Comment 8 WebKit Commit Bot 2019-05-06 18:23:46 PDT
All reviewed patches have been landed.  Closing bug.
Comment 9 Keith Miller 2019-05-06 18:24:50 PDT
rdar://problem/50253144