diff options
author | Neels Hofmeyr <neels@hofmeyr.de> | 2020-10-12 18:45:58 +0000 |
---|---|---|
committer | laforge <laforge@osmocom.org> | 2020-10-13 08:43:10 +0000 |
commit | ffd2ef1de4da33bb0e8d5c1fa6e375a7dc544886 (patch) | |
tree | 4da37c56a0ddf44d323c3e65a0c5670fa0ec388b | |
parent | 66e1509ae10f841700f6e9ccf72d7c2d5cba4456 (diff) |
as_handover: fix for signalling channel, without MGCP
Change-Id: I276f82841c07f8a885ee0659002d4a41e5b180e4
-rw-r--r-- | bsc/MSC_ConnectionHandler.ttcn | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn index 3e58f5a0..5460e2cb 100644 --- a/bsc/MSC_ConnectionHandler.ttcn +++ b/bsc/MSC_ConnectionHandler.ttcn @@ -1323,9 +1323,11 @@ altstep as_handover(inout HandoverState st) runs on MSC_ConnHdlr { * time. When we receive the RSL_RF_CHAN_REL command the media negotiation on * IPACC or MGCP level may be still in progress. In order to make sure that * we do only stop when we have seen an MDCX on MGCP level and another a CRCX - * as well as an MDCX on IPACC level. */ - if (g_media.mgcp_conn[0].mdcx_seen <= st.mdcx_seen_before_ho or - g_media.bts1.ipa_mdcx_seen == false or g_media.bts1.ipa_crcx_seen == false) { + * as well as an MDCX on IPACC level. + * If ipa_crcx_seen is false, this is not a voice channel and we need not check MGCP at all.. */ + if (g_media.bts.ipa_crcx_seen + and (g_media.mgcp_conn[0].mdcx_seen <= st.mdcx_seen_before_ho or + g_media.bts1.ipa_mdcx_seen == false or g_media.bts1.ipa_crcx_seen == false)) { repeat; } else { st.handover_done := true; |