mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-11-17 15:24:56 +00:00
Avoid acces to a out of range value
This commit is contained in:
parent
98cde65832
commit
a2eaf403ff
@ -369,21 +369,30 @@ std::pair<Gnss_Synchro, Gnss_Synchro> hybrid_observables_cc::find_closest(std::d
|
|||||||
}
|
}
|
||||||
aux++;
|
aux++;
|
||||||
}
|
}
|
||||||
delta_t = T_rx_s - data.at(index).RX_time;
|
try
|
||||||
if((index == (data.size() - 1)) or (delta_t < 0.0))
|
|
||||||
{
|
{
|
||||||
result.first = data.at(index);
|
delta_t = T_rx_s - data.at(index).RX_time;
|
||||||
result.second = data.at(index - 1);
|
if(index == 0)
|
||||||
|
{
|
||||||
|
result.first = data.at(1);
|
||||||
|
result.second = data.at(0);
|
||||||
|
}
|
||||||
|
else if((index == (data.size() - 1)) or (delta_t < 0.0))
|
||||||
|
{
|
||||||
|
result.first = data.at(index);
|
||||||
|
result.second = data.at(index - 1);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result.first = data.at(index + 1);
|
||||||
|
result.second = data.at(index);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if(index == 0)
|
catch(const std::exception& e)
|
||||||
{
|
{
|
||||||
result.first = data.at(1);
|
result.first = Gnss_Synchro();
|
||||||
result.second = data.at(0);
|
result.second = Gnss_Synchro();
|
||||||
}
|
LOG(WARNING) << e.what();
|
||||||
else
|
|
||||||
{
|
|
||||||
result.first = data.at(index + 1);
|
|
||||||
result.second = data.at(index);
|
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user