diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-04-11 17:18:02 +0200 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-04-25 23:13:26 +0800 |
commit | f51b9006a18432019fa788a8f139c4e30b87ecaa (patch) | |
tree | 6e491a4a04670409b23a2f92fb9418a4c50effd2 /openbsc/src/e1_input.c | |
parent | 4ac100ec248c6431c12cae725b5759aed43066ea (diff) |
e1_input: Stop the timer when deleting the signalling link on the TS
Stop the tx_timer when deleting the link on top of that ts. Otherwise
bad things might happen. E.g. when scheduling a write on OML and then
the OML link vanishes...
This is a slight layering violation as there could be more than
one signalling link on the timeslot (at least in theory) so the
queue and the timer should move to the e1inp_sign_link.
Diffstat (limited to 'openbsc/src/e1_input.c')
-rw-r--r-- | openbsc/src/e1_input.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/openbsc/src/e1_input.c b/openbsc/src/e1_input.c index 7ddd40559..b1dfe9b1d 100644 --- a/openbsc/src/e1_input.c +++ b/openbsc/src/e1_input.c @@ -428,6 +428,9 @@ void e1inp_sign_link_destroy(struct e1inp_sign_link *link) msgb_free(msg); } + if (link->ts->type == E1INP_TS_TYPE_SIGN) + bsc_del_timer(&link->ts->sign.tx_timer); + talloc_free(link); } |