aboutsummaryrefslogtreecommitdiffstats
path: root/src/libvlr/vlr_sgs_fsm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libvlr/vlr_sgs_fsm.c')
-rw-r--r--src/libvlr/vlr_sgs_fsm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/libvlr/vlr_sgs_fsm.c b/src/libvlr/vlr_sgs_fsm.c
index a25d41c3b..13639ca3c 100644
--- a/src/libvlr/vlr_sgs_fsm.c
+++ b/src/libvlr/vlr_sgs_fsm.c
@@ -24,6 +24,7 @@
#include <osmocom/msc/debug.h>
#include <osmocom/msc/vlr.h>
#include <osmocom/msc/vlr_sgs.h>
+#include <osmocom/msc/paging.h>
#include "vlr_sgs_fsm.h"
#include "vlr_core.h"
@@ -77,7 +78,8 @@ static void to_null(struct osmo_fsm_inst *fi)
vsub->tmsi_new = GSM_RESERVED_TMSI;
/* Make sure any ongoing paging is aborted. */
- vsub->cs.is_paging = false;
+ if (vsub->cs.is_paging)
+ paging_expired(vsub);
/* Ensure that Ts5 (pending paging via SGs) is deleted */
if (vlr_sgs_pag_pend(vsub))
@@ -344,7 +346,7 @@ static struct osmo_fsm sgs_ue_fsm = {
void vlr_sgs_fsm_init(void)
{
if (osmo_fsm_find_by_name(sgs_ue_fsm.name) != &sgs_ue_fsm)
- osmo_fsm_register(&sgs_ue_fsm);
+ OSMO_ASSERT(osmo_fsm_register(&sgs_ue_fsm) == 0);
}
/*! Crate SGs FSM in struct vlr_subscr.