fix(#1147): break wait loop immediately on unknown task id
This commit is contained in:
parent
faff09ef23
commit
3dda286d2b
1 changed files with 10 additions and 7 deletions
|
|
@ -1029,13 +1029,16 @@ impl AgentServer {
|
||||||
let deadline = tokio::time::Instant::now()
|
let deadline = tokio::time::Instant::now()
|
||||||
+ std::time::Duration::from_secs(wait.min(MAX_WAIT_SECS));
|
+ std::time::Duration::from_secs(wait.min(MAX_WAIT_SECS));
|
||||||
loop {
|
loop {
|
||||||
if let Some(task) = crate::bash_runner::read_task(&args.id) {
|
match crate::bash_runner::read_task(&args.id) {
|
||||||
use crate::bash_runner::TaskStatus;
|
None => break, // unknown ID — no point waiting
|
||||||
if matches!(
|
Some(task) => {
|
||||||
task.status,
|
use crate::bash_runner::TaskStatus;
|
||||||
TaskStatus::Done | TaskStatus::TimedOut | TaskStatus::Interrupted
|
if matches!(
|
||||||
) {
|
task.status,
|
||||||
break;
|
TaskStatus::Done | TaskStatus::TimedOut | TaskStatus::Interrupted
|
||||||
|
) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if tokio::time::Instant::now() >= deadline {
|
if tokio::time::Instant::now() >= deadline {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue