diff options
Diffstat (limited to 'mingling/src/program/exec.rs')
| -rw-r--r-- | mingling/src/program/exec.rs | 6 |
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(¤t) { break; } } |
