From 669402c7e0de35f682e46a75726fe0b8b9a9404b Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Thu, 9 May 2019 01:55:39 +0200 Subject: [PATCH] Log simulator status for dispatch errors (FSX/P3D) --- src/plugins/simulator/fsxcommon/simulatorfsxcommon.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/simulator/fsxcommon/simulatorfsxcommon.cpp b/src/plugins/simulator/fsxcommon/simulatorfsxcommon.cpp index e77175079..fa53cd6e9 100644 --- a/src/plugins/simulator/fsxcommon/simulatorfsxcommon.cpp +++ b/src/plugins/simulator/fsxcommon/simulatorfsxcommon.cpp @@ -1407,18 +1407,22 @@ namespace BlackSimPlugin // error handling if (isFailure(hr)) { + const SimulatorStatus simStatus = this->getSimulatorStatus(); + const bool disconnectedOrPaused = simStatus.testFlag(Disconnected) || simStatus.testFlag(Paused); + Q_UNUSED(disconnectedOrPaused); + m_dispatchErrors++; this->triggerAutoTraceSendId(); if (m_dispatchErrors == 2) { // 2nd time, an error / avoid multiple messages // idea: if it happens once ignore - CLogMessage(this).error(u"%1: Dispatch error") << this->getSimulatorPluginInfo().getIdentifier(); + CLogMessage(this).error(u"%1: Dispatch error, sim.status: %2") << this->getSimulatorPluginInfo().getIdentifier() << ISimulator::statusToString(simStatus); } else if (m_dispatchErrors > 5) { // this normally happens during a FSX crash or shutdown with simconnect - CLogMessage(this).error(u"%1: Multiple dispatch errors, disconnecting") << this->getSimulatorPluginInfo().getIdentifier(); + CLogMessage(this).error(u"%1: Multiple dispatch errors, disconnecting. Sim.status: %2") << this->getSimulatorPluginInfo().getIdentifier() << ISimulator::statusToString(simStatus); this->disconnectFrom(); } return;