From 3e912bb379584b2435b0b7f77dcd08d2b8d5ef27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Frosteg=C3=A5rd?= Date: Wed, 27 Oct 2021 01:52:49 +0200 Subject: [PATCH] aquatic_http: glommio: fix channel join deadlock in network.rs --- aquatic_http/src/lib/glommio/network.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/aquatic_http/src/lib/glommio/network.rs b/aquatic_http/src/lib/glommio/network.rs index 552731e..9d8a264 100644 --- a/aquatic_http/src/lib/glommio/network.rs +++ b/aquatic_http/src/lib/glommio/network.rs @@ -54,13 +54,12 @@ pub async fn run_socket_worker( let listener = TcpListener::bind(config.network.address).expect("bind socket"); num_bound_sockets.fetch_add(1, Ordering::SeqCst); - let (_, mut response_receivers) = response_mesh_builder.join(Role::Consumer).await.unwrap(); - - let response_consumer_id = ConsumerId(response_receivers.consumer_id().unwrap()); - let (request_senders, _) = request_mesh_builder.join(Role::Producer).await.unwrap(); let request_senders = Rc::new(request_senders); + let (_, mut response_receivers) = response_mesh_builder.join(Role::Consumer).await.unwrap(); + let response_consumer_id = ConsumerId(response_receivers.consumer_id().unwrap()); + let connection_slab = Rc::new(RefCell::new(Slab::new())); for (_, response_receiver) in response_receivers.streams() {