From 092277ac1eb2997916a8ad0c4fbf961c91180498 Mon Sep 17 00:00:00 2001 From: Fabrice Bellard Date: Sat, 7 Nov 2026 14:25:12 +0100 Subject: [PATCH] avoid dereferencing the iterator twice in js_append_enumerate() --- quickjs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/quickjs.c b/quickjs.c index a15818e..737cfeb 100644 --- a/quickjs.c +++ b/quickjs.c @@ -17317,9 +17317,9 @@ static __exception int js_append_enumerate(JSContext *ctx, JSValue *sp) ft.generic_magic = js_create_array_iterator; is_array_iterator = JS_IsCFunction(ctx, iterator, ft.generic, JS_ITERATOR_KIND_VALUE); - JS_FreeValue(ctx, iterator); - enumobj = JS_GetIterator(ctx, sp[-1], FALSE); + enumobj = JS_GetIterator2(ctx, sp[-1], iterator); + JS_FreeValue(ctx, iterator); if (JS_IsException(enumobj)) return -1; method = JS_GetProperty(ctx, enumobj, JS_ATOM_next); -- 2.47.3