From 801a11c2fff39f927e21b7a805a94cd1b2aee07e Mon Sep 17 00:00:00 2001
From: Fredrik Orderud <fredrik.orderud@gehealthcare.com>
Date: Mon, 16 Sep 2024 17:07:21 +0200
Subject: [PATCH 1/4] Move descriptorSize initialization from cpp to header.

---
 libraries/HID/src/HID.cpp | 2 +-
 libraries/HID/src/HID.h   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libraries/HID/src/HID.cpp b/libraries/HID/src/HID.cpp
index 3dd85fc10..1afc67733 100644
--- a/libraries/HID/src/HID.cpp
+++ b/libraries/HID/src/HID.cpp
@@ -147,7 +147,7 @@ bool HID_::setup(USBSetup& setup)
 }
 
 HID_::HID_(void) : PluggableUSBModule(1, 1, epType),
-                   rootNode(NULL), descriptorSize(0),
+                   rootNode(NULL),
                    protocol(HID_REPORT_PROTOCOL), idle(1)
 {
 	epType[0] = EP_TYPE_INTERRUPT_IN;
diff --git a/libraries/HID/src/HID.h b/libraries/HID/src/HID.h
index 93c4bd5b4..bf834b0f2 100644
--- a/libraries/HID/src/HID.h
+++ b/libraries/HID/src/HID.h
@@ -107,7 +107,7 @@ class HID_ : public PluggableUSBModule
   uint8_t epType[1];
 
   HIDSubDescriptor* rootNode;
-  uint16_t descriptorSize;
+  uint16_t descriptorSize = 0;
 
   uint8_t protocol;
   uint8_t idle;

From 01057480396f251de0259e68addf210ee5678551 Mon Sep 17 00:00:00 2001
From: Fredrik Orderud <fredrik.orderud@gehealthcare.com>
Date: Mon, 16 Sep 2024 17:08:09 +0200
Subject: [PATCH 2/4] Move idle member initialization from cpp to header.

---
 libraries/HID/src/HID.cpp | 2 +-
 libraries/HID/src/HID.h   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libraries/HID/src/HID.cpp b/libraries/HID/src/HID.cpp
index 1afc67733..3c681c4d0 100644
--- a/libraries/HID/src/HID.cpp
+++ b/libraries/HID/src/HID.cpp
@@ -148,7 +148,7 @@ bool HID_::setup(USBSetup& setup)
 
 HID_::HID_(void) : PluggableUSBModule(1, 1, epType),
                    rootNode(NULL),
-                   protocol(HID_REPORT_PROTOCOL), idle(1)
+                   protocol(HID_REPORT_PROTOCOL)
 {
 	epType[0] = EP_TYPE_INTERRUPT_IN;
 	PluggableUSB().plug(this);
diff --git a/libraries/HID/src/HID.h b/libraries/HID/src/HID.h
index bf834b0f2..c64c2e97d 100644
--- a/libraries/HID/src/HID.h
+++ b/libraries/HID/src/HID.h
@@ -110,7 +110,7 @@ class HID_ : public PluggableUSBModule
   uint16_t descriptorSize = 0;
 
   uint8_t protocol;
-  uint8_t idle;
+  uint8_t idle = 1;
 };
 
 // Replacement for global singleton.

From a54b14c5c0fe08a748ecec403539bf1ed5f55d96 Mon Sep 17 00:00:00 2001
From: Fredrik Orderud <fredrik.orderud@gehealthcare.com>
Date: Mon, 16 Sep 2024 17:08:53 +0200
Subject: [PATCH 3/4] Move protocol member initialization from cpp to header.

---
 libraries/HID/src/HID.cpp | 3 +--
 libraries/HID/src/HID.h   | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/libraries/HID/src/HID.cpp b/libraries/HID/src/HID.cpp
index 3c681c4d0..c74e442d6 100644
--- a/libraries/HID/src/HID.cpp
+++ b/libraries/HID/src/HID.cpp
@@ -147,8 +147,7 @@ bool HID_::setup(USBSetup& setup)
 }
 
 HID_::HID_(void) : PluggableUSBModule(1, 1, epType),
-                   rootNode(NULL),
-                   protocol(HID_REPORT_PROTOCOL)
+                   rootNode(NULL)
 {
 	epType[0] = EP_TYPE_INTERRUPT_IN;
 	PluggableUSB().plug(this);
diff --git a/libraries/HID/src/HID.h b/libraries/HID/src/HID.h
index c64c2e97d..3bafeb5cc 100644
--- a/libraries/HID/src/HID.h
+++ b/libraries/HID/src/HID.h
@@ -109,7 +109,7 @@ class HID_ : public PluggableUSBModule
   HIDSubDescriptor* rootNode;
   uint16_t descriptorSize = 0;
 
-  uint8_t protocol;
+  uint8_t protocol = HID_REPORT_PROTOCOL;
   uint8_t idle = 1;
 };
 

From f3a31a02f28808d02b7062749a395d9b7363e97c Mon Sep 17 00:00:00 2001
From: Fredrik Orderud <fredrik.orderud@gehealthcare.com>
Date: Mon, 16 Sep 2024 17:10:06 +0200
Subject: [PATCH 4/4] Move rootNode member initialization from cpp to header.

---
 libraries/HID/src/HID.cpp | 3 +--
 libraries/HID/src/HID.h   | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/libraries/HID/src/HID.cpp b/libraries/HID/src/HID.cpp
index c74e442d6..7a0915c24 100644
--- a/libraries/HID/src/HID.cpp
+++ b/libraries/HID/src/HID.cpp
@@ -146,8 +146,7 @@ bool HID_::setup(USBSetup& setup)
 	return false;
 }
 
-HID_::HID_(void) : PluggableUSBModule(1, 1, epType),
-                   rootNode(NULL)
+HID_::HID_(void) : PluggableUSBModule(1, 1, epType)
 {
 	epType[0] = EP_TYPE_INTERRUPT_IN;
 	PluggableUSB().plug(this);
diff --git a/libraries/HID/src/HID.h b/libraries/HID/src/HID.h
index 3bafeb5cc..fea80654f 100644
--- a/libraries/HID/src/HID.h
+++ b/libraries/HID/src/HID.h
@@ -106,7 +106,7 @@ class HID_ : public PluggableUSBModule
 private:
   uint8_t epType[1];
 
-  HIDSubDescriptor* rootNode;
+  HIDSubDescriptor* rootNode = NULL;
   uint16_t descriptorSize = 0;
 
   uint8_t protocol = HID_REPORT_PROTOCOL;