aboutsummaryrefslogtreecommitdiffstats
path: root/src/pdch.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/pdch.cpp')
-rw-r--r--src/pdch.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/pdch.cpp b/src/pdch.cpp
index 2ec40ce1..5f35c28b 100644
--- a/src/pdch.cpp
+++ b/src/pdch.cpp
@@ -48,6 +48,7 @@ extern "C" {
#include "coding_scheme.h"
#include "gsm_rlcmac.h"
#include "nacc_fsm.h"
+#include "ms_anr_fsm.h"
}
#include <errno.h>
@@ -425,6 +426,11 @@ void gprs_rlcmac_pdch::rcv_control_ack(Packet_Control_Acknowledgement_t *packet,
* switch to a new cell."
*/
return;
+ } else if (reason == PDCH_ULC_POLL_MEAS_ORDER && ms->anr &&
+ (ms->anr->fi->state == MS_ANR_ST_WAIT_CTRL_ACK1 || ms->anr->fi->state == MS_ANR_ST_WAIT_CTRL_ACK2)
+ && ms->anr->poll_fn == fn && ms->anr->poll_ts == ts_no) {
+ osmo_fsm_inst_dispatch(ms->anr->fi, MS_ANR_EV_RX_PKT_CTRL_ACK_MSG, NULL);
+ return;
}
LOGPDCH(this, DRLCMAC, LOGL_ERROR, "FN=%" PRIu32 " "
"Error: received PACKET CONTROL ACK at no request (reason=%s)\n", fn,