From e344fc5b56b5d5b3cb70d82ec50d2240ae19905b Mon Sep 17 00:00:00 2001 From: Jonathan Naylor Date: Fri, 18 Jun 2021 08:56:29 +0100 Subject: [PATCH] Alter the mode timer reset behaviour when already in that mode. --- MMDVMHost.cpp | 30 ++++++++++++++++++------------ Version.h | 2 +- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/MMDVMHost.cpp b/MMDVMHost.cpp index 17acb6a..1f5422c 100644 --- a/MMDVMHost.cpp +++ b/MMDVMHost.cpp @@ -784,8 +784,9 @@ int CMMDVMHost::run() setMode(MODE_DSTAR); } } else if (m_mode == MODE_DSTAR) { - m_dstar->writeModem(data, len); - m_modeTimer.start(); + bool ret = m_dstar->writeModem(data, len); + if (ret) + m_modeTimer.start(); } else if (m_mode != MODE_LOCKOUT) { LogWarning("D-Star modem data received when in mode %u", m_mode); } @@ -874,8 +875,9 @@ int CMMDVMHost::run() setMode(MODE_YSF); } } else if (m_mode == MODE_YSF) { - m_ysf->writeModem(data, len); - m_modeTimer.start(); + bool ret = m_ysf->writeModem(data, len); + if (ret) + m_modeTimer.start(); } else if (m_mode != MODE_LOCKOUT) { LogWarning("System Fusion modem data received when in mode %u", m_mode); } @@ -890,8 +892,9 @@ int CMMDVMHost::run() setMode(MODE_P25); } } else if (m_mode == MODE_P25) { - m_p25->writeModem(data, len); - m_modeTimer.start(); + bool ret = m_p25->writeModem(data, len); + if (ret) + m_modeTimer.start(); } else if (m_mode != MODE_LOCKOUT) { LogWarning("P25 modem data received when in mode %u", m_mode); } @@ -906,8 +909,9 @@ int CMMDVMHost::run() setMode(MODE_NXDN); } } else if (m_mode == MODE_NXDN) { - m_nxdn->writeModem(data, len); - m_modeTimer.start(); + bool ret = m_nxdn->writeModem(data, len); + if (ret) + m_modeTimer.start(); } else if (m_mode != MODE_LOCKOUT) { LogWarning("NXDN modem data received when in mode %u", m_mode); } @@ -922,8 +926,9 @@ int CMMDVMHost::run() setMode(MODE_M17); } } else if (m_mode == MODE_M17) { - m_m17->writeModem(data, len); - m_modeTimer.start(); + bool ret = m_m17->writeModem(data, len); + if (ret) + m_modeTimer.start(); } else if (m_mode != MODE_LOCKOUT) { LogWarning("M17 modem data received when in mode %u", m_mode); } @@ -938,8 +943,9 @@ int CMMDVMHost::run() setMode(MODE_FM); } } else if (m_mode == MODE_FM) { - m_fm->writeModem(data, len); - m_modeTimer.start(); + bool ret = m_fm->writeModem(data, len); + if (ret) + m_modeTimer.start(); } else if (m_mode != MODE_LOCKOUT) { LogWarning("FM modem data received when in mode %u", m_mode); } diff --git a/Version.h b/Version.h index 850d54c..268714e 100644 --- a/Version.h +++ b/Version.h @@ -19,6 +19,6 @@ #if !defined(VERSION_H) #define VERSION_H -const char* VERSION = "20210525"; +const char* VERSION = "20210618"; #endif