summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--internal/fsm/fsm.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/internal/fsm/fsm.go b/internal/fsm/fsm.go
index 1b38e3a..f5bebd7 100644
--- a/internal/fsm/fsm.go
+++ b/internal/fsm/fsm.go
@@ -98,7 +98,9 @@ func (fsm *FSM) InState(check StateID) bool {
}
func (fsm *FSM) CheckTransition(desired StateID) error {
- if desired == fsm.initial {
+ // initial or begin state is fine
+ // 0 = deregistered
+ if desired == fsm.initial || desired == 0 {
return nil
}
for _, ts := range fsm.States[fsm.Current].Transitions {