Isolate interactive terminal session ownership
This commit is contained in:
parent
b240bc1d12
commit
690738d846
1 changed files with 280 additions and 24 deletions
|
|
@ -422,7 +422,13 @@ impl ClientBackend for CoordinatorClientBackend {
|
|||
} else {
|
||||
execute_over_control_face_as(&endpoint, argv, stdout, stderr, &self.identity)?
|
||||
};
|
||||
if let Some(coordinator) = self.coordinator.take() {
|
||||
self.bootstrap_owner.take();
|
||||
if let Some(coordinator) = self.coordinator.take()
|
||||
&& coordinator
|
||||
.has_exited()
|
||||
.map_err(failure)
|
||||
.map_err(ClientError::Backend)?
|
||||
{
|
||||
let status = coordinator
|
||||
.reap()
|
||||
.map_err(failure)
|
||||
|
|
@ -433,7 +439,6 @@ impl ClientBackend for CoordinatorClientBackend {
|
|||
))));
|
||||
}
|
||||
}
|
||||
self.bootstrap_owner.take();
|
||||
Ok(exit)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue