Fix internal property listing in ecma_op_object_own_property_keys
JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg
@@ -2415,10 +2415,12 @@ ecma_op_object_own_property_keys (ecma_object_t *obj_p) /**< object */
{
ecma_property_pair_t *prop_pair_p = (ecma_property_pair_t *) prop_iter_p;
- /* Internal properties are special properties so they must not be present. */
- JERRY_ASSERT (ECMA_PROPERTY_GET_NAME_TYPE (*property_p) != ECMA_DIRECT_STRING_MAGIC
- || prop_pair_p->names_cp[i] < LIT_NON_INTERNAL_MAGIC_STRING__COUNT
- || prop_pair_p->names_cp[i] >= LIT_MAGIC_STRING__COUNT);
+ if (ECMA_PROPERTY_GET_NAME_TYPE (*property_p) == ECMA_DIRECT_STRING_MAGIC
+ && prop_pair_p->names_cp[i] >= LIT_NON_INTERNAL_MAGIC_STRING__COUNT
+ && prop_pair_p->names_cp[i] < LIT_MAGIC_STRING__COUNT)
+ {
+ continue;
+ }
ecma_string_t *name_p = ecma_string_from_property_name (*property_p,
prop_pair_p->names_cp[i]);
