Bug 203230

Summary: Fix incorrect assertion in operationRegExpExecNonGlobalOrSticky().
Product: WebKit Reporter: Mark Lam <mark.lam>
Component: JavaScriptCoreAssignee: Mark Lam <mark.lam>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, ews-watchlist, keith_miller, msaboff, rmorisset, saam, tzagallo, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
proposed patch.
rmorisset: review+
proposed patch.
none
Archive of layout-test-results from ews212 for win-future none

Description Mark Lam 2019-10-21 18:19:15 PDT
operationRegExpExecNonGlobalOrSticky() was asserting no exception when createRegExpMatchesArray() returns null.  createRegExpMatchesArray() only returns null when RegExp::matchInline() returns -1.  The only way RegExp::matchInline() can return -1 is via a throwError() helper which throws an exception.  The other return path in RegExp::matchInline() explicitly ASSERT(result >= -1).

Hence, the assertion in operationRegExpExecNonGlobalOrSticky() is wrong.

<rdar://problem/56460749>
Comment 1 Mark Lam 2019-10-21 18:46:06 PDT
Created attachment 381497 [details]
proposed patch.
Comment 2 Robin Morisset 2019-10-21 18:47:13 PDT
Comment on attachment 381497 [details]
proposed patch.

r=me
Comment 3 Mark Lam 2019-10-21 18:56:37 PDT
Thanks for the review.  Landed in r251411: <http://trac.webkit.org/r251411>.
Comment 4 Mark Lam 2019-10-21 22:45:08 PDT
The fix is incorrect and regressing some JSC tests.  Rolled out in r251418: <http://trac.webkit.org/r251418>.
Comment 5 Mark Lam 2019-10-21 22:57:05 PDT
Created attachment 381512 [details]
proposed patch.
Comment 6 EWS Watchlist 2019-10-22 00:41:50 PDT
Comment on attachment 381512 [details]
proposed patch.

Attachment 381512 [details] did not pass win-ews (win):
Output: https://webkit-queues.webkit.org/results/13161246

New failing tests:
fast/repaint/backgroundSizeRepaint.html
Comment 7 EWS Watchlist 2019-10-22 00:41:52 PDT
Created attachment 381519 [details]
Archive of layout-test-results from ews212 for win-future

The attached test failures were seen while running run-webkit-tests on the win-ews.
Bot: ews212  Port: win-future  Platform: CYGWIN_NT-10.0-17763-3.0.5-338.x86_64-x86_64-64bit
Comment 8 EWS Watchlist 2019-10-22 02:37:11 PDT
Comment on attachment 381512 [details]
proposed patch.

Attachment 381512 [details] did not pass jsc-ews (mac):
Output: https://webkit-queues.webkit.org/results/13161354

New failing tests:
mozilla-tests.yaml/js1_5/Array/regress-101964.js.mozilla-no-ftl
Comment 9 Mark Lam 2019-10-22 09:15:06 PDT
(In reply to Build Bot from comment #6)
> New failing tests:
> fast/repaint/backgroundSizeRepaint.html

This is failing due to slight differences in rendered pixels. It cannot possibly be due to this patch.


(In reply to Build Bot from comment #8)
> New failing tests:
> mozilla-tests.yaml/js1_5/Array/regress-101964.js.mozilla-no-ftl

This is the test flaking out again.  It's not related to this patch.
Comment 10 Robin Morisset 2019-10-22 12:22:51 PDT
Comment on attachment 381512 [details]
proposed patch.

r=me
Comment 11 Mark Lam 2019-10-22 12:24:57 PDT
Comment on attachment 381512 [details]
proposed patch.

Thanks for the review.
Comment 12 WebKit Commit Bot 2019-10-22 13:28:00 PDT
Comment on attachment 381512 [details]
proposed patch.

Clearing flags on attachment: 381512

Committed r251447: <https://trac.webkit.org/changeset/251447>
Comment 13 WebKit Commit Bot 2019-10-22 13:28:02 PDT
All reviewed patches have been landed.  Closing bug.