diff --git a/srsenb/src/stack/mac/sched_ue_ctrl/sched_harq.cc b/srsenb/src/stack/mac/sched_ue_ctrl/sched_harq.cc index 96eb86a9d..e7050ae60 100644 --- a/srsenb/src/stack/mac/sched_ue_ctrl/sched_harq.cc +++ b/srsenb/src/stack/mac/sched_ue_ctrl/sched_harq.cc @@ -273,8 +273,14 @@ bool ul_harq_proc::has_pending_phich() const bool ul_harq_proc::pop_pending_phich() { + assert(pending_phich); bool ret = ack_state[0]; pending_phich = false; + if (is_empty(0)) { + // fully reset UL HARQ once PHICH is dispatched + is_msg3_ = false; + pending_data = 0; + } return ret; }