aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/common/l1sap.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 3de76ab4..97dd6611 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -1427,8 +1427,14 @@ static void repeated_ul_sacch_active_decision(struct gsm_lchan *lchan,
uint16_t upper = 0;
uint16_t lower = 0;
- if (!lchan->repeated_acch_capability.ul_sacch)
+ /* This is an optimization so that we exit as quickly as possible if
+ * there are no uplink SACCH repetition capabilities present.
+ * However If the repeated UL-SACCH capabilities vanish for whatever
+ * reason, we must be sure that UL-SACCH repetition is disabled. */
+ if (!lchan->repeated_acch_capability.ul_sacch) {
+ lchan->repeated_ul_sacch_active = false;
return;
+ }
/* Threshold disabled (repetition is always on) */
if (lchan->repeated_acch_capability.rxqual == 0) {