Fix gc of async destructuring assignments of strings (#5126)
This fixes #5089 When garbage collection is running on a paused async function that includes destructuring assignments of strings, the string can be a direct string, and not an object, which cannot be marked as visited, as it does not have a visited flag. JerryScript-DCO-1.0-Signed-off-by: Máté Tokodi mate.tokodi@szteszoftver.hu
This commit is contained in:
@@ -742,7 +742,11 @@ ecma_gc_mark_executable_object (ecma_object_t *object_p) /**< object */
|
||||
|
||||
do
|
||||
{
|
||||
ecma_gc_set_object_visited (ecma_get_object_from_value (*(--context_top_p)));
|
||||
--context_top_p;
|
||||
if (ecma_is_value_object (*context_top_p))
|
||||
{
|
||||
ecma_gc_set_object_visited (ecma_get_object_from_value (*context_top_p));
|
||||
}
|
||||
} while (context_top_p > last_item_p);
|
||||
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user