From f3f6f1bc5f6bd5d73ca33204fa7127b52be0f1d6ab7b5a32435a211bb79c8b7d Mon Sep 17 00:00:00 2001 From: localhorst Date: Sat, 10 Jan 2026 12:01:22 +0100 Subject: [PATCH] Potential division by zero --- main/inputs.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/main/inputs.c b/main/inputs.c index 93b2adf..8df4fb8 100644 --- a/main/inputs.c +++ b/main/inputs.c @@ -132,7 +132,14 @@ void updateAverage(sMeasurement *pMeasurement) sum += pMeasurement->average10s.samples[i]; } - pMeasurement->average10s.fValue = sum / pMeasurement->average10s.bufferCount; + if (pMeasurement->average10s.bufferCount == 0U) + { + pMeasurement->average10s.fValue = 0.0f; + } + else + { + pMeasurement->average10s.fValue = sum / pMeasurement->average10s.bufferCount; + } // Average form the last 60sec pMeasurement->average60s.samples[pMeasurement->average60s.bufferIndex] = pMeasurement->fCurrentValue; @@ -149,7 +156,14 @@ void updateAverage(sMeasurement *pMeasurement) sum += pMeasurement->average60s.samples[i]; } - pMeasurement->average60s.fValue = sum / pMeasurement->average60s.bufferCount; + if (pMeasurement->average60s.bufferCount == 0U) + { + pMeasurement->average60s.fValue = 0.0f; + } + else + { + pMeasurement->average60s.fValue = sum / pMeasurement->average60s.bufferCount; + } // Damped current value if (pMeasurement->fDampedValue == INITIALISATION_VALUE)