script: Use RegExpFlag_UnicodeSets when validating regular expressions in HTMLInputElement (#36236)

Changed `RegExpFlag_Unicode` to `RegExpFlag_UnicodeSets` in all
instances.

Testing: Ran `./mach test-wpt
tests/wpt/tests/html/semantics/forms/constraints/form-validation-validity-patternMismatch.html`
and all tests passed successfully.
Fixes: #36075

---------

Signed-off-by: MDCODE247 <ammedabubakard500@gmail.com>
This commit is contained in:
MDCODE247 2025-04-01 08:29:24 +01:00 committed by GitHub
parent fab7bbcd38
commit be38c5478f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 3 additions and 33 deletions

View file

@ -17,7 +17,7 @@ use encoding_rs::Encoding;
use html5ever::{LocalName, Prefix, local_name, namespace_url, ns};
use js::jsapi::{
ClippedTime, DateGetMsecSinceEpoch, Handle, JS_ClearPendingException, JSObject, NewDateObject,
NewUCRegExpObject, ObjectIsDate, RegExpFlag_Unicode, RegExpFlags,
NewUCRegExpObject, ObjectIsDate, RegExpFlag_UnicodeSets, RegExpFlags,
};
use js::jsval::UndefinedValue;
use js::rust::wrappers::{CheckRegExpSyntax, ExecuteRegExpNoStatics, ObjectIsRegExp};
@ -3002,7 +3002,7 @@ fn compile_pattern(cx: SafeJSContext, pattern_str: &str, out_regex: MutableHandl
// ...and if it does make pattern that matches only the entirety of string
let pattern_str = format!("^(?:{})$", pattern_str);
let flags = RegExpFlags {
flags_: RegExpFlag_Unicode,
flags_: RegExpFlag_UnicodeSets,
};
new_js_regex(cx, &pattern_str, flags, out_regex)
} else {
@ -3023,7 +3023,7 @@ fn check_js_regex_syntax(cx: SafeJSContext, pattern: &str) -> bool {
pattern.as_ptr(),
pattern.len(),
RegExpFlags {
flags_: RegExpFlag_Unicode,
flags_: RegExpFlag_UnicodeSets,
},
exception.handle_mut(),
);

View file

@ -1,21 +0,0 @@
[form-validation-validity-patternMismatch.html]
[[INPUT in TEXT status\] Invalid `v` regular expression gets ignored]
expected: FAIL
[[INPUT in SEARCH status\] Invalid `v` regular expression gets ignored]
expected: FAIL
[[INPUT in TEL status\] Invalid `v` regular expression gets ignored]
expected: FAIL
[[INPUT in URL status\] Invalid `v` regular expression gets ignored]
expected: FAIL
[[INPUT in EMAIL status\] Invalid `v` regular expression gets ignored]
expected: FAIL
[[INPUT in PASSWORD status\] Invalid `v` regular expression gets ignored]
expected: FAIL
[[INPUT in EMAIL status\] Invalid `v` regular expression gets ignored, if multiple is present]
expected: FAIL

View file

@ -1,9 +0,0 @@
[pattern_attribute_v_flag.html]
[<input pattern> supports set difference syntax]
expected: FAIL
[<input pattern> supports string literal syntax]
expected: FAIL
[<input pattern> enables the RegExp v flag]
expected: FAIL