From b61347b2552cb7159ee3e82c5e9ca5a76e73c3f8 Mon Sep 17 00:00:00 2001 From: Nayeem Rahman Date: Fri, 24 Jul 2020 02:33:52 +0100 Subject: fix(cli/js/ops/fs_events): Ignore polling errors caused by return() (#6785) --- cli/rt/40_fs_events.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'cli/rt') diff --git a/cli/rt/40_fs_events.js b/cli/rt/40_fs_events.js index ad1fd678f..b9121c155 100644 --- a/cli/rt/40_fs_events.js +++ b/cli/rt/40_fs_events.js @@ -2,6 +2,7 @@ ((window) => { const { sendSync, sendAsync } = window.__bootstrap.dispatchJson; + const { errors } = window.__bootstrap.errors; const { close } = window.__bootstrap.resources; class FsWatcher { @@ -16,10 +17,17 @@ return this.#rid; } - next() { - return sendAsync("op_fs_events_poll", { - rid: this.rid, - }); + async next() { + try { + return await sendAsync("op_fs_events_poll", { + rid: this.rid, + }); + } catch (error) { + if (error instanceof errors.BadResource) { + return { value: undefined, done: true }; + } + throw error; + } } return(value) { -- cgit v1.2.3