✨ Exit on compositor exit
This commit is contained in:
parent
bc07650f01
commit
378f137d0a
2 changed files with 20 additions and 15 deletions
|
|
@ -18,6 +18,7 @@ use tokio::{
|
|||
mpsc::{self, unbounded_channel},
|
||||
oneshot,
|
||||
},
|
||||
task::JoinHandle,
|
||||
};
|
||||
use tokio_util::sync::CancellationToken;
|
||||
use tracing::Instrument;
|
||||
|
|
@ -190,7 +191,7 @@ pub fn run_compositor(
|
|||
token: CancellationToken,
|
||||
mut socket_rx: mpsc::UnboundedReceiver<Vec<UnixStream>>,
|
||||
env_tx: oneshot::Sender<HashMap<String, String>>,
|
||||
) -> Result<()> {
|
||||
) -> Result<JoinHandle<Result<()>>> {
|
||||
let (tx, mut rx) = unbounded_channel::<ProcessEvent>();
|
||||
let (session, comp) = UnixStream::pair().wrap_err("failed to create pair of unix sockets")?;
|
||||
let (mut session_rx, mut session_tx) = session.into_split();
|
||||
|
|
@ -206,7 +207,7 @@ pub fn run_compositor(
|
|||
};
|
||||
let span = info_span!(parent: None, "cosmic-comp");
|
||||
let _span = span.clone();
|
||||
tokio::spawn(
|
||||
Ok(tokio::spawn(
|
||||
async move {
|
||||
ProcessHandler::new(tx, &token).run(
|
||||
"cosmic-comp",
|
||||
|
|
@ -236,6 +237,5 @@ pub fn run_compositor(
|
|||
Result::<()>::Ok(())
|
||||
}
|
||||
.instrument(_span),
|
||||
);
|
||||
Ok(())
|
||||
))
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue