diff --git a/srsue/src/stack/rrc/rrc_procedures.cc b/srsue/src/stack/rrc/rrc_procedures.cc index d5a6ee1d3..835dfbbe9 100644 --- a/srsue/src/stack/rrc/rrc_procedures.cc +++ b/srsue/src/stack/rrc/rrc_procedures.cc @@ -1103,7 +1103,7 @@ proc_outcome_t rrc::go_idle_proc::step() void rrc::go_idle_proc::then(const srslte::proc_state_t& result) { - if (not rrc_ptr->cell_reselector.launch()) { + if (rrc_ptr->nas->is_attached() and not rrc_ptr->cell_reselector.launch()) { rrc_ptr->rrc_log->error("Failed to initiate a Cell Reselection procedure...\n"); return; } @@ -1129,11 +1129,6 @@ rrc::cell_reselection_proc::cell_reselection_proc(srsue::rrc* rrc_) : rrc_ptr(rr proc_outcome_t rrc::cell_reselection_proc::init() { - if (not rrc_ptr->nas->is_attached() or rrc_ptr->is_connected()) { - // check if rrc is still idle - return proc_outcome_t::success; - } - if (rrc_ptr->neighbour_cells.empty() and rrc_ptr->phy_sync_state == phy_in_sync and rrc_ptr->phy->cell_is_camping()) { // don't bother with cell selection if there are no neighbours and we are already camping return proc_outcome_t::success;