diff --git a/src/lte/model/lte-harq-phy.cc b/src/lte/model/lte-harq-phy.cc index 9e8c23757..a939a526f 100644 --- a/src/lte/model/lte-harq-phy.cc +++ b/src/lte/model/lte-harq-phy.cc @@ -176,11 +176,19 @@ LteHarqPhy::UpdateUlHarqProcessStatus (uint16_t rnti, double mi, uint16_t infoBy } else { - if ((*it).second.at (7).size () == 3) // MAX HARQ RETX + if ((*it).second.at (0).size () == 3) // MAX HARQ RETX { // HARQ should be disabled -> discard info return; } + +// move current status back at the end to maintain full history + HarqProcessInfoList_t list = (*it).second.at (0); + for (uint8_t i = 0; i < list.size (); i++) + { + (*it).second.at (7).push_back (list.at (i)); + } + HarqProcessInfoElement_t el; el.m_mi = mi; el.m_infoBits = infoBytes * 8;