From 8212ff74ba87ed92277400b1480e36dccac6b147 Mon Sep 17 00:00:00 2001 From: Will Leach <4619280+melbourne2991@users.noreply.github.com> Date: Fri, 7 Feb 2025 19:25:46 +1100 Subject: [PATCH] support generator return values in QuickJSIterator --- .../quickjs-emscripten-core/src/QuickJSIterator.ts | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/packages/quickjs-emscripten-core/src/QuickJSIterator.ts b/packages/quickjs-emscripten-core/src/QuickJSIterator.ts index adcd8547..9ffc1d20 100644 --- a/packages/quickjs-emscripten-core/src/QuickJSIterator.ts +++ b/packages/quickjs-emscripten-core/src/QuickJSIterator.ts @@ -128,20 +128,17 @@ export class QuickJSIterator } const done = this.context.getProp(callResult.value, "done").consume((v) => this.context.dump(v)) + const value = this.context.getProp(callResult.value, "value") + + callResult.value.dispose() + if (done) { - callResult.value.dispose() this.dispose() - return { - done, - value: undefined, - } } - const value = this.context.getProp(callResult.value, "value") - callResult.value.dispose() return { value: DisposableResult.success(value), - done: done as false, + done: done as boolean, } } }