summaryrefslogtreecommitdiff
path: root/cli/rt
diff options
context:
space:
mode:
Diffstat (limited to 'cli/rt')
-rw-r--r--cli/rt/40_fs_events.js16
1 files changed, 12 insertions, 4 deletions
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) {