From 02a66728856d6a111ef61eca2cc052df052579a9 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Sun, 10 Jul 2016 15:13:51 +0200 Subject: fsm: delete the timer when changing state In osmo_fsm_inst_state_chg(), we need to stop any not-yet-expired timer of the old state before transitioning into the new state. Change-Id: I2558f9a7027a877ea8263785ed3c8d70d2513996 --- src/fsm.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/fsm.c b/src/fsm.c index 049663d7..67db1825 100644 --- a/src/fsm.c +++ b/src/fsm.c @@ -318,6 +318,9 @@ int osmo_fsm_inst_state_chg(struct osmo_fsm_inst *fi, uint32_t new_state, return -EPERM; } + /* delete the old timer */ + osmo_timer_del(&fi->timer); + if (st->onleave) st->onleave(fi, new_state); -- cgit v1.2.3