From 208b5e7e4fff912253211e600fc4a54ba9fd86fe Mon Sep 17 00:00:00 2001
From: Federico Mandelli <federicomandelli@skywarder.eu>
Date: Wed, 26 Jul 2023 13:56:09 +0200
Subject: [PATCH] [CanProtocol] Moved loadEstimator initialization in start
 method

---
 src/shared/drivers/canbus/CanProtocol/CanProtocol.cpp | 6 +++---
 src/shared/drivers/canbus/CanProtocol/CanProtocol.h   | 4 +++-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/shared/drivers/canbus/CanProtocol/CanProtocol.cpp b/src/shared/drivers/canbus/CanProtocol/CanProtocol.cpp
index b4d64afdd..546d5879b 100644
--- a/src/shared/drivers/canbus/CanProtocol/CanProtocol.cpp
+++ b/src/shared/drivers/canbus/CanProtocol/CanProtocol.cpp
@@ -32,14 +32,14 @@ namespace Canbus
 
 CanProtocol::CanProtocol(CanbusDriver* can, MsgHandler onReceive,
                          uint32_t baudRate)
-    : can(can), onReceive(onReceive)
+    : can(can), onReceive(onReceive), baudRate(baudRate)
 {
-    loadEstimator = new BusLoadEstimation(baudRate);
 }
 
 bool CanProtocol::start()
 {
-    stopFlag = false;
+    loadEstimator = new BusLoadEstimation(baudRate);
+    stopFlag      = false;
 
     if (can == nullptr)
         return false;
diff --git a/src/shared/drivers/canbus/CanProtocol/CanProtocol.h b/src/shared/drivers/canbus/CanProtocol/CanProtocol.h
index c68c83ade..a95ddd8a9 100644
--- a/src/shared/drivers/canbus/CanProtocol/CanProtocol.h
+++ b/src/shared/drivers/canbus/CanProtocol/CanProtocol.h
@@ -195,7 +195,9 @@ private:
 
     SyncCircularBuffer<CanMessage, 10> outQueue;
 
-    BusLoadEstimation* loadEstimator;
+    uint32_t baudRate;
+
+    BusLoadEstimation* loadEstimator = NULL;
 
     PrintLogger logger = Logging::getLogger("canprotocol");
 };
-- 
GitLab