mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 05:07:45 +00:00
LibWeb: Ignore non-finite args in CanvasRenderingContext2D.{scale,translate}()
This commit is contained in:
parent
b962728c4e
commit
7defc521be
1 changed files with 8 additions and 6 deletions
|
@ -160,13 +160,14 @@ JS::Value CanvasRenderingContext2DWrapper::scale(JS::Interpreter& interpreter)
|
||||||
if (!impl)
|
if (!impl)
|
||||||
return {};
|
return {};
|
||||||
if (interpreter.argument_count() >= 2) {
|
if (interpreter.argument_count() >= 2) {
|
||||||
auto sx = interpreter.argument(0).to_double(interpreter);
|
auto sx = interpreter.argument(0).to_number(interpreter);
|
||||||
if (interpreter.exception())
|
if (interpreter.exception())
|
||||||
return {};
|
return {};
|
||||||
auto sy = interpreter.argument(1).to_double(interpreter);
|
auto sy = interpreter.argument(1).to_number(interpreter);
|
||||||
if (interpreter.exception())
|
if (interpreter.exception())
|
||||||
return {};
|
return {};
|
||||||
impl->scale(sx, sy);
|
if (sx.is_finite_number() && sy.is_finite_number())
|
||||||
|
impl->scale(sx.as_double(), sy.as_double());
|
||||||
}
|
}
|
||||||
return JS::js_undefined();
|
return JS::js_undefined();
|
||||||
}
|
}
|
||||||
|
@ -177,13 +178,14 @@ JS::Value CanvasRenderingContext2DWrapper::translate(JS::Interpreter& interprete
|
||||||
if (!impl)
|
if (!impl)
|
||||||
return {};
|
return {};
|
||||||
if (interpreter.argument_count() >= 2) {
|
if (interpreter.argument_count() >= 2) {
|
||||||
auto tx = interpreter.argument(0).to_double(interpreter);
|
auto tx = interpreter.argument(0).to_number(interpreter);
|
||||||
if (interpreter.exception())
|
if (interpreter.exception())
|
||||||
return {};
|
return {};
|
||||||
auto ty = interpreter.argument(1).to_double(interpreter);
|
auto ty = interpreter.argument(1).to_number(interpreter);
|
||||||
if (interpreter.exception())
|
if (interpreter.exception())
|
||||||
return {};
|
return {};
|
||||||
impl->translate(tx, ty);
|
if (tx.is_finite_number() && ty.is_finite_number())
|
||||||
|
impl->translate(tx.as_double(), ty.as_double());
|
||||||
}
|
}
|
||||||
return JS::js_undefined();
|
return JS::js_undefined();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue