diff options
author | João Souto <joao.jpgs@hotmail.com> | 2020-03-11 22:19:24 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-03-11 18:19:24 -0400 |
commit | fb5c31416d4b9e526ca0fcc134dc8f366e367012 (patch) | |
tree | cffd644e8f6b99db10a75ecb6e32879d9f4c3ce0 /cli/ops/tls.rs | |
parent | 810e4a16bedbc77ef0651f4f24626d98ca566083 (diff) |
Add waker to StreamResource to fix hang on close bugs (#4293)
Diffstat (limited to 'cli/ops/tls.rs')
-rw-r--r-- | cli/ops/tls.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/cli/ops/tls.rs b/cli/ops/tls.rs index e64bc4745..642284ea2 100644 --- a/cli/ops/tls.rs +++ b/cli/ops/tls.rs @@ -1,6 +1,6 @@ // Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. use super::dispatch_json::{Deserialize, JsonOp, Value}; -use super::io::StreamResource; +use super::io::{StreamResource, StreamResourceHolder}; use crate::op_error::OpError; use crate::resolve_addr::resolve_addr; use crate::state::State; @@ -85,7 +85,9 @@ pub fn op_connect_tls( let mut state = state_.borrow_mut(); let rid = state.resource_table.add( "clientTlsStream", - Box::new(StreamResource::ClientTlsStream(Box::new(tls_stream))), + Box::new(StreamResourceHolder::new(StreamResource::ClientTlsStream( + Box::new(tls_stream), + ))), ); Ok(json!({ "rid": rid, @@ -318,7 +320,9 @@ fn op_accept_tls( let mut state = state.borrow_mut(); state.resource_table.add( "serverTlsStream", - Box::new(StreamResource::ServerTlsStream(Box::new(tls_stream))), + Box::new(StreamResourceHolder::new(StreamResource::ServerTlsStream( + Box::new(tls_stream), + ))), ) }; Ok(json!({ |