mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-23 07:15:35 +08:00
Fix the initial weather request in case last position is null
calculateGreatCircleDistance returns false immediately if any of the arguments was null. ref T324
This commit is contained in:
committed by
Klaus Basan
parent
7a7f1f2df0
commit
3804612bed
@@ -229,12 +229,15 @@ namespace BlackSimPlugin
|
||||
if (m_isWeatherActivated)
|
||||
{
|
||||
const auto currentPosition = CCoordinateGeodetic { situation.latitude(), situation.longitude() };
|
||||
if (CWeatherScenario::isRealWeatherScenario(m_weatherScenarioSettings.get()) &&
|
||||
calculateGreatCircleDistance(m_lastWeatherPosition, currentPosition).value(CLengthUnit::mi()) > 20)
|
||||
if (CWeatherScenario::isRealWeatherScenario(m_weatherScenarioSettings.get()))
|
||||
{
|
||||
m_lastWeatherPosition = currentPosition;
|
||||
const auto weatherGrid = CWeatherGrid { { "GLOB", currentPosition } };
|
||||
requestWeatherGrid(weatherGrid, { this, &CSimulatorEmulated::injectWeatherGrid });
|
||||
if (m_lastWeatherPosition.isNull() ||
|
||||
calculateGreatCircleDistance(m_lastWeatherPosition, currentPosition).value(CLengthUnit::mi()) > 20)
|
||||
{
|
||||
m_lastWeatherPosition = currentPosition;
|
||||
const auto weatherGrid = CWeatherGrid { { "GLOB", currentPosition } };
|
||||
requestWeatherGrid(weatherGrid, { this, &CSimulatorEmulated::injectWeatherGrid });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user