diff --git a/src/blackcore/context/contextsimulatorimpl.cpp b/src/blackcore/context/contextsimulatorimpl.cpp index 1f5a1bd89..8974ac70e 100644 --- a/src/blackcore/context/contextsimulatorimpl.cpp +++ b/src/blackcore/context/contextsimulatorimpl.cpp @@ -883,10 +883,15 @@ namespace BlackCore void CContextSimulator::onWeatherGridReceived(const CWeatherGrid &weatherGrid, const CIdentifier &identifier) { if (!this->isSimulatorPluginAvailable()) { return; } - if (!m_simulatorPlugin.second) { return; } - if (m_simulatorPlugin.second->identifier() == identifier) + if (!m_simulatorPlugin.second) { return; } + + if (m_simulatorPlugin.second && m_simulatorPlugin.second->identifier() == identifier) { - m_simulatorPlugin.second->injectWeatherGrid(weatherGrid); + // ONLY send if WEATHER is ON + if (m_simulatorPlugin.second->isWeatherActivated()) + { + m_simulatorPlugin.second->injectWeatherGrid(weatherGrid); + } } } diff --git a/src/plugins/simulator/xplane/simulatorxplane.cpp b/src/plugins/simulator/xplane/simulatorxplane.cpp index a9303d822..5bb02c1ff 100644 --- a/src/plugins/simulator/xplane/simulatorxplane.cpp +++ b/src/plugins/simulator/xplane/simulatorxplane.cpp @@ -898,7 +898,8 @@ namespace BlackSimPlugin void CSimulatorXPlane::injectWeatherGrid(const CWeatherGrid &weatherGrid) { if (this->isShuttingDownOrDisconnected()) { return; } - if (weatherGrid.isEmpty()) { return; } + if (weatherGrid.isEmpty()) { return; } + if (!this->isWeatherActivated()) { return; } if (!CThreadUtils::isCurrentThreadObjectThread(this)) {