mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 14:27:35 +00:00
LibJS: Remove impossible check from Array's native length getter/setter
Since the object rewrite native property getters/setters are always called with the owning object as the this_value, which in this case is an Array object, and as such this checks are always false.
This commit is contained in:
parent
6787e86a3a
commit
e915155ca4
1 changed files with 0 additions and 16 deletions
|
@ -81,14 +81,6 @@ JS_DEFINE_NATIVE_GETTER(Array::length_getter)
|
||||||
if (!this_object)
|
if (!this_object)
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
// TODO: could be incorrect if receiver/this_value is fixed or changed
|
|
||||||
if (!this_object->is_array()) {
|
|
||||||
auto value = this_object->internal_get(vm.names.length.to_string_or_symbol(), this_object);
|
|
||||||
if (vm.exception())
|
|
||||||
return {};
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
|
|
||||||
return Value(this_object->indexed_properties().array_like_size());
|
return Value(this_object->indexed_properties().array_like_size());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -98,14 +90,6 @@ JS_DEFINE_NATIVE_SETTER(Array::length_setter)
|
||||||
if (!this_object)
|
if (!this_object)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// TODO: could be incorrect if receiver/this_value is fixed or changed
|
|
||||||
if (!this_object->is_array()) {
|
|
||||||
this_object->define_property(vm.names.length.to_string_or_symbol(), value, default_attributes);
|
|
||||||
if (vm.exception())
|
|
||||||
return;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
auto length = value.to_number(global_object);
|
auto length = value.to_number(global_object);
|
||||||
if (vm.exception())
|
if (vm.exception())
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue