mirror of
https://git.asonix.dog/asonix/pict-rs
synced 2024-12-22 19:31:35 +00:00
Don't kill already-exited processes, don't log tmp_dir when fetching details
This commit is contained in:
parent
8a55bc5e6c
commit
6d259a0eea
2 changed files with 11 additions and 13 deletions
|
@ -1121,7 +1121,7 @@ async fn details_query<S: Store + 'static>(
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Fetch file details
|
/// Fetch file details
|
||||||
#[tracing::instrument(name = "Fetching details", skip(repo, store, config))]
|
#[tracing::instrument(name = "Fetching details", skip(tmp_dir, repo, store, config))]
|
||||||
async fn details<S: Store + 'static>(
|
async fn details<S: Store + 'static>(
|
||||||
alias: web::Path<Serde<Alias>>,
|
alias: web::Path<Serde<Alias>>,
|
||||||
tmp_dir: web::Data<ArcTmpDir>,
|
tmp_dir: web::Data<ArcTmpDir>,
|
||||||
|
|
|
@ -223,8 +223,7 @@ impl Process {
|
||||||
Ok(Ok(status)) => Err(ProcessError::Status(command, status)),
|
Ok(Ok(status)) => Err(ProcessError::Status(command, status)),
|
||||||
Ok(Err(e)) => Err(ProcessError::Other(e)),
|
Ok(Err(e)) => Err(ProcessError::Other(e)),
|
||||||
Err(_) => {
|
Err(_) => {
|
||||||
child.kill().await.map_err(ProcessError::Other)?;
|
let _ = child.kill().await;
|
||||||
|
|
||||||
Err(ProcessError::Timeout(command))
|
Err(ProcessError::Timeout(command))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -268,19 +267,18 @@ impl Process {
|
||||||
child.wait().await
|
child.wait().await
|
||||||
};
|
};
|
||||||
|
|
||||||
let error = match child_fut.with_timeout(timeout).await {
|
match child_fut.with_timeout(timeout).await {
|
||||||
Ok(Ok(status)) if status.success() => {
|
Ok(Ok(status)) if status.success() => {
|
||||||
guard.disarm();
|
guard.disarm();
|
||||||
return Ok(());
|
Ok(())
|
||||||
}
|
}
|
||||||
Ok(Ok(status)) => ProcessError::Status(command2, status),
|
Ok(Ok(status)) => Err(ProcessError::Status(command2, status)),
|
||||||
Ok(Err(e)) => ProcessError::Other(e),
|
Ok(Err(e)) => Err(ProcessError::Other(e)),
|
||||||
Err(_) => ProcessError::Timeout(command2),
|
Err(_) => {
|
||||||
};
|
|
||||||
|
|
||||||
child.kill().await.map_err(ProcessError::Other)?;
|
child.kill().await.map_err(ProcessError::Other)?;
|
||||||
|
Err(ProcessError::Timeout(command2))
|
||||||
Err(error)
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
ProcessRead {
|
ProcessRead {
|
||||||
|
|
Loading…
Reference in a new issue