From 4e3ec478573ede7247fd306cad1ea5bf2d5c9565 Mon Sep 17 00:00:00 2001 From: Yoshiya Hinosawa Date: Tue, 22 Jun 2021 15:17:44 +0900 Subject: fix(runtime): fix signal promise API (#11069) --- runtime/js/40_signals.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'runtime/js') diff --git a/runtime/js/40_signals.js b/runtime/js/40_signals.js index dfc604759..bf6be1263 100644 --- a/runtime/js/40_signals.js +++ b/runtime/js/40_signals.js @@ -236,7 +236,15 @@ f, g, ) { - return this.#pollingPromise.then(() => {}).then(f, g); + return this.#pollingPromise.then((done) => { + if (done) { + // If pollingPromise returns true, then + // this signal stream is finished and the promise API + // should never be resolved. + return new Promise(() => {}); + } + return; + }).then(f, g); } async next() { -- cgit v1.2.3