webdriver: Serialize JS int values as i32. (#34997)

Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
Josh Matthews 2025-01-15 03:15:37 -05:00 committed by GitHub
parent 2da57602ac
commit 5140ce81f0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 10 additions and 1 deletions

View file

@ -171,7 +171,14 @@ pub(crate) unsafe fn jsval_to_webdriver(
Ok(WebDriverJSValue::Null)
} else if val.get().is_boolean() {
Ok(WebDriverJSValue::Boolean(val.get().to_boolean()))
} else if val.get().is_double() || val.get().is_int32() {
} else if val.get().is_int32() {
Ok(WebDriverJSValue::Int(
match FromJSValConvertible::from_jsval(cx, val, ConversionBehavior::Default).unwrap() {
ConversionResult::Success(c) => c,
_ => unreachable!(),
},
))
} else if val.get().is_double() {
Ok(WebDriverJSValue::Number(
match FromJSValConvertible::from_jsval(cx, val, ()).unwrap() {
ConversionResult::Success(c) => c,