diff options
Diffstat (limited to 'src/libbsc/bsc_subscr_conn_fsm.c')
-rw-r--r-- | src/libbsc/bsc_subscr_conn_fsm.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/libbsc/bsc_subscr_conn_fsm.c b/src/libbsc/bsc_subscr_conn_fsm.c index a63483e4e..788d4fb08 100644 --- a/src/libbsc/bsc_subscr_conn_fsm.c +++ b/src/libbsc/bsc_subscr_conn_fsm.c @@ -1019,12 +1019,6 @@ static void gscon_cleanup(struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cau conn->lchan = NULL; } - if (conn->bsub) { - LOGPFSML(fi, LOGL_DEBUG, "Putting bsc_subscr\n"); - bsc_subscr_put(conn->bsub); - conn->bsub = NULL; - } - if (conn->sccp.state != SUBSCR_SCCP_ST_NONE) { LOGPFSML(fi, LOGL_DEBUG, "Disconnecting SCCP\n"); struct bsc_msc_data *msc = conn->sccp.msc; @@ -1038,6 +1032,12 @@ static void gscon_cleanup(struct osmo_fsm_inst *fi, enum osmo_fsm_term_cause cau penalty_timers_free(&conn->hodec2.penalty_timers); + if (conn->bsub) { + LOGPFSML(fi, LOGL_DEBUG, "Putting bsc_subscr\n"); + bsc_subscr_put(conn->bsub); + conn->bsub = NULL; + } + llist_del(&conn->entry); talloc_free(conn); fi->priv = NULL; |