1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-23 15:35:08 +00:00
serenity/Userland/Libraries/LibJS/Tests/builtins
Linus Groh 83c29bd8d7 LibJS: Don't assume match for each capture group in RegExp.prototype.exec()
This was not implementing the following part of the spec correctly:

    27. For each integer i such that i ≥ 1 and i ≤ n, do
        a. Let captureI be ith element of r's captures List.
        b. If captureI is undefined, let capturedValue be undefined.

Expecting a capture group match to exist for each of the RegExp's
capture groups would assert in Vector's operator[] if that's not the
case, for example:

    /(foo)(bar)?/.exec("foo")

Append undefined instead.

Fixes #5256.
2021-02-08 18:01:23 +01:00
..
Array Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
ArrayBuffer Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
BigInt Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Boolean Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Date Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Error Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Function Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
functions Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Infinity Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
JSON Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Math LibJS: Improve correctness of rounding and bitwise operations 2021-02-05 09:38:45 +01:00
NaN Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Number Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Object Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Proxy Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Reflect Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
RegExp LibJS: Don't assume match for each capture group in RegExp.prototype.exec() 2021-02-08 18:01:23 +01:00
String Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
Symbol Libraries: Move to Userland/Libraries/ 2021-01-12 12:17:46 +01:00
TypedArray LibJS: Add overflow checks when creating TypedArray from ArrayBuffer 2021-01-27 07:57:07 +01:00