diff options
Diffstat (limited to 'cli/ops/workers.rs')
-rw-r--r-- | cli/ops/workers.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/cli/ops/workers.rs b/cli/ops/workers.rs index 4bde38222..2b4d11e75 100644 --- a/cli/ops/workers.rs +++ b/cli/ops/workers.rs @@ -227,7 +227,12 @@ fn op_host_get_worker_closed( }; let op = future.then(move |_result| { let mut workers_table = state_.workers.lock().unwrap(); - workers_table.remove(&id); + let maybe_worker = workers_table.remove(&id); + if let Some(worker) = maybe_worker { + let mut channels = worker.state.worker_channels.lock().unwrap(); + channels.sender.close_channel(); + channels.receiver.close(); + }; futures::future::ok(json!({})) }); |