summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
Diffstat (limited to 'ext')
-rw-r--r--ext/fs/ops.rs12
-rw-r--r--ext/http/slab.rs4
-rw-r--r--ext/net/ops.rs4
-rw-r--r--ext/node/ops/zlib/mod.rs4
-rw-r--r--ext/websocket/lib.rs4
5 files changed, 21 insertions, 7 deletions
diff --git a/ext/fs/ops.rs b/ext/fs/ops.rs
index c98b214c2..15711e227 100644
--- a/ext/fs/ops.rs
+++ b/ext/fs/ops.rs
@@ -1156,7 +1156,9 @@ where
let res = fut.or_cancel(cancel_handle).await;
if let Some(cancel_rid) = cancel_rid {
- state.borrow_mut().resource_table.close(cancel_rid).ok();
+ if let Ok(res) = state.borrow_mut().resource_table.take_any(cancel_rid) {
+ res.close();
+ }
};
res?.context_path("writefile", &path)?;
@@ -1213,7 +1215,9 @@ where
let res = fut.or_cancel(cancel_handle).await;
if let Some(cancel_rid) = cancel_rid {
- state.borrow_mut().resource_table.close(cancel_rid).ok();
+ if let Ok(res) = state.borrow_mut().resource_table.take_any(cancel_rid) {
+ res.close();
+ }
};
res?.context_path("readfile", &path)?
@@ -1269,7 +1273,9 @@ where
let res = fut.or_cancel(cancel_handle).await;
if let Some(cancel_rid) = cancel_rid {
- state.borrow_mut().resource_table.close(cancel_rid).ok();
+ if let Ok(res) = state.borrow_mut().resource_table.take_any(cancel_rid) {
+ res.close();
+ }
};
res?.context_path("readfile", &path)?
diff --git a/ext/http/slab.rs b/ext/http/slab.rs
index 4718aded1..7c48b87b6 100644
--- a/ext/http/slab.rs
+++ b/ext/http/slab.rs
@@ -46,7 +46,9 @@ impl HttpRequestBodyAutocloser {
impl Drop for HttpRequestBodyAutocloser {
fn drop(&mut self) {
- _ = self.1.borrow_mut().resource_table.close(self.0);
+ if let Ok(res) = self.1.borrow_mut().resource_table.take_any(self.0) {
+ res.close();
+ }
}
}
diff --git a/ext/net/ops.rs b/ext/net/ops.rs
index b7459a347..942afc55f 100644
--- a/ext/net/ops.rs
+++ b/ext/net/ops.rs
@@ -621,7 +621,9 @@ where
let lookup_rv = lookup_fut.or_cancel(cancel_handle).await;
if let Some(cancel_rid) = cancel_rid {
- state.borrow_mut().resource_table.close(cancel_rid).ok();
+ if let Ok(res) = state.borrow_mut().resource_table.take_any(cancel_rid) {
+ res.close();
+ }
};
lookup_rv?
diff --git a/ext/node/ops/zlib/mod.rs b/ext/node/ops/zlib/mod.rs
index 2ddf6f2cd..105666b06 100644
--- a/ext/node/ops/zlib/mod.rs
+++ b/ext/node/ops/zlib/mod.rs
@@ -408,7 +408,9 @@ pub fn op_zlib_close_if_pending(
};
if pending_close {
drop(resource);
- state.resource_table.close(handle)?;
+ if let Ok(res) = state.resource_table.take_any(handle) {
+ res.close();
+ }
}
Ok(())
diff --git a/ext/websocket/lib.rs b/ext/websocket/lib.rs
index 4b05131d9..479cae7ec 100644
--- a/ext/websocket/lib.rs
+++ b/ext/websocket/lib.rs
@@ -288,7 +288,9 @@ where
};
if let Some(cancel_rid) = cancel_handle {
- state.borrow_mut().resource_table.close(cancel_rid).ok();
+ if let Ok(res) = state.borrow_mut().resource_table.take_any(cancel_rid) {
+ res.close();
+ }
}
let mut state = state.borrow_mut();