diff --git a/lib/constructs/interface.js b/lib/constructs/interface.js index 30656063..a8bda9c2 100644 --- a/lib/constructs/interface.js +++ b/lib/constructs/interface.js @@ -477,10 +477,10 @@ class Interface { return internal.target[implSymbol][utils.asyncIteratorReturn](this, value); }; - const returnPromise = internal.ongoingPromise ? + internal.ongoingPromise = internal.ongoingPromise ? internal.ongoingPromise.then(returnSteps, returnSteps) : returnSteps(); - return returnPromise.then(() => newObjectInRealm(globalObject, { value, done: true })); + return internal.ongoingPromise.then(() => newObjectInRealm(globalObject, { value, done: true })); } `; } diff --git a/test/__snapshots__/test.js.snap b/test/__snapshots__/test.js.snap index ffa057db..fadf089d 100644 --- a/test/__snapshots__/test.js.snap +++ b/test/__snapshots__/test.js.snap @@ -1254,10 +1254,10 @@ exports.install = (globalObject, globalNames) => { return internal.target[implSymbol][utils.asyncIteratorReturn](this, value); }; - const returnPromise = internal.ongoingPromise + internal.ongoingPromise = internal.ongoingPromise ? internal.ongoingPromise.then(returnSteps, returnSteps) : returnSteps(); - return returnPromise.then(() => newObjectInRealm(globalObject, { value, done: true })); + return internal.ongoingPromise.then(() => newObjectInRealm(globalObject, { value, done: true })); } }); @@ -12630,10 +12630,10 @@ exports.install = (globalObject, globalNames) => { return internal.target[implSymbol][utils.asyncIteratorReturn](this, value); }; - const returnPromise = internal.ongoingPromise + internal.ongoingPromise = internal.ongoingPromise ? internal.ongoingPromise.then(returnSteps, returnSteps) : returnSteps(); - return returnPromise.then(() => newObjectInRealm(globalObject, { value, done: true })); + return internal.ongoingPromise.then(() => newObjectInRealm(globalObject, { value, done: true })); } });