summaryrefslogtreecommitdiff
path: root/mingling/src/program/exec.rs
diff options
context:
space:
mode:
Diffstat (limited to 'mingling/src/program/exec.rs')
-rw-r--r--mingling/src/program/exec.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/mingling/src/program/exec.rs b/mingling/src/program/exec.rs
index ccdb17b..8277f69 100644
--- a/mingling/src/program/exec.rs
+++ b/mingling/src/program/exec.rs
@@ -3,7 +3,7 @@
use crate::{
AnyOutput, ChainProcess, Dispatcher, Program, ProgramCollect, RenderResult,
error::{ChainProcessError, ProgramInternalExecuteError},
- hint::{DispatcherNotFound, NoChainFound, ProgramEnd, RendererNotFound},
+ hint::{DispatcherNotFound, RendererNotFound},
};
pub mod error;
@@ -59,7 +59,9 @@ pub async fn exec<C: ProgramCollect>(
}
}
};
- if current.is::<ProgramEnd>() || current.is::<NoChainFound>() {
+
+ // If the dispatcher cannot find the next chain, end execution
+ if C::has_chain(&current) {
break;
}
}