diff --git a/modules/control/Firmware/src/Messages/Parser.cpp b/modules/control/Firmware/src/Messages/Parser.cpp index 2f6711b..500b448 100644 --- a/modules/control/Firmware/src/Messages/Parser.cpp +++ b/modules/control/Firmware/src/Messages/Parser.cpp @@ -398,7 +398,7 @@ auto message::parser::StateVisitor::operator()(state::Complete) -> State { } auto message::parser::StateVisitor::operator()(state::Invalid) -> State { message->second.give(); - return state::Invalid{}; + return state::Complete{}; } auto message::parser::parse( @@ -406,8 +406,7 @@ auto message::parser::parse( freertos::Queue &lightActionQueue) -> void { StateVisitor visitor{message, lightActionQueue}; State state{state::ModeSelection{}}; - while (!etl::holds_alternative(state) && - !etl::holds_alternative(state)) { + while (!etl::holds_alternative(state)) { state = etl::visit(visitor, state); } }