diff --git a/Controllers/A4TechController/BloodyB820RController/RGBController_BloodyB820R.cpp b/Controllers/A4TechController/BloodyB820RController/RGBController_BloodyB820R.cpp index e05df15f0..7542041ba 100644 --- a/Controllers/A4TechController/BloodyB820RController/RGBController_BloodyB820R.cpp +++ b/Controllers/A4TechController/BloodyB820RController/RGBController_BloodyB820R.cpp @@ -173,6 +173,8 @@ RGBController_BloodyB820R::RGBController_BloodyB820R(BloodyB820RController *cont RGBController_BloodyB820R::~RGBController_BloodyB820R() { + Shutdown(); + delete controller; } diff --git a/Controllers/A4TechController/BloodyMouseController/RGBController_BloodyMouse.cpp b/Controllers/A4TechController/BloodyMouseController/RGBController_BloodyMouse.cpp index 49c139b89..0ca8d3dfa 100644 --- a/Controllers/A4TechController/BloodyMouseController/RGBController_BloodyMouse.cpp +++ b/Controllers/A4TechController/BloodyMouseController/RGBController_BloodyMouse.cpp @@ -89,6 +89,8 @@ RGBController_BloodyMouse::RGBController_BloodyMouse(BloodyMouseController *cont RGBController_BloodyMouse::~RGBController_BloodyMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/AMBXController/RGBController_AMBX.cpp b/Controllers/AMBXController/RGBController_AMBX.cpp index 6daeabb07..a543c791d 100644 --- a/Controllers/AMBXController/RGBController_AMBX.cpp +++ b/Controllers/AMBXController/RGBController_AMBX.cpp @@ -44,6 +44,8 @@ RGBController_AMBX::RGBController_AMBX(AMBXController* controller_ptr) RGBController_AMBX::~RGBController_AMBX() { + Shutdown(); + delete controller; } diff --git a/Controllers/AMDWraithPrismController/RGBController_AMDWraithPrism.cpp b/Controllers/AMDWraithPrismController/RGBController_AMDWraithPrism.cpp index 4b65cfb20..d619c78fd 100644 --- a/Controllers/AMDWraithPrismController/RGBController_AMDWraithPrism.cpp +++ b/Controllers/AMDWraithPrismController/RGBController_AMDWraithPrism.cpp @@ -132,6 +132,8 @@ RGBController_AMDWraithPrism::RGBController_AMDWraithPrism(AMDWraithPrismControl RGBController_AMDWraithPrism::~RGBController_AMDWraithPrism() { + Shutdown(); + delete controller; } diff --git a/Controllers/AOCKeyboardController/RGBController_AOCKeyboard.cpp b/Controllers/AOCKeyboardController/RGBController_AOCKeyboard.cpp index f8a60d8b3..5793a5af1 100644 --- a/Controllers/AOCKeyboardController/RGBController_AOCKeyboard.cpp +++ b/Controllers/AOCKeyboardController/RGBController_AOCKeyboard.cpp @@ -257,6 +257,8 @@ RGBController_AOCKeyboard::RGBController_AOCKeyboard(AOCKeyboardController* cont RGBController_AOCKeyboard::~RGBController_AOCKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/AOCMouseController/RGBController_AOCMouse.cpp b/Controllers/AOCMouseController/RGBController_AOCMouse.cpp index 6102931f3..3ad7c4ac4 100644 --- a/Controllers/AOCMouseController/RGBController_AOCMouse.cpp +++ b/Controllers/AOCMouseController/RGBController_AOCMouse.cpp @@ -123,6 +123,8 @@ RGBController_AOCMouse::RGBController_AOCMouse(AOCMouseController* controller_pt RGBController_AOCMouse::~RGBController_AOCMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/AOCMousematController/RGBController_AOCMousemat.cpp b/Controllers/AOCMousematController/RGBController_AOCMousemat.cpp index 5ef058064..4fa23bbfa 100644 --- a/Controllers/AOCMousematController/RGBController_AOCMousemat.cpp +++ b/Controllers/AOCMousematController/RGBController_AOCMousemat.cpp @@ -113,6 +113,8 @@ RGBController_AOCMousemat::RGBController_AOCMousemat(AOCMousematController* cont RGBController_AOCMousemat::~RGBController_AOCMousemat() { + Shutdown(); + delete controller; } diff --git a/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.cpp b/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.cpp index 1e111234e..9231fc021 100755 --- a/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.cpp +++ b/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.cpp @@ -185,6 +185,13 @@ RGBController_PolychromeUSB::RGBController_PolychromeUSB(PolychromeUSBController SetupZones(); } +RGBController_PolychromeUSB::~RGBController_PolychromeUSB() +{ + Shutdown(); + + delete controller; +} + void RGBController_PolychromeUSB::SetupZones() { /*-------------------------------------------------*\ diff --git a/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.h b/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.h index de5c70c23..859782565 100755 --- a/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.h +++ b/Controllers/ASRockPolychromeUSBController/RGBController_ASRockPolychromeUSB.h @@ -19,6 +19,7 @@ class RGBController_PolychromeUSB : public RGBController { public: RGBController_PolychromeUSB(PolychromeUSBController* controller_ptr); + ~RGBController_PolychromeUSB(); void SetupZones(); diff --git a/Controllers/ASRockSMBusController/ASRockASRRGBSMBusController/RGBController_ASRockASRRGBSMBus.cpp b/Controllers/ASRockSMBusController/ASRockASRRGBSMBusController/RGBController_ASRockASRRGBSMBus.cpp index b21ee7262..ddd916c80 100644 --- a/Controllers/ASRockSMBusController/ASRockASRRGBSMBusController/RGBController_ASRockASRRGBSMBus.cpp +++ b/Controllers/ASRockSMBusController/ASRockASRRGBSMBusController/RGBController_ASRockASRRGBSMBus.cpp @@ -113,6 +113,8 @@ RGBController_ASRockASRRGBSMBus::RGBController_ASRockASRRGBSMBus(ASRockASRRGBSMB RGBController_ASRockASRRGBSMBus::~RGBController_ASRockASRRGBSMBus() { + Shutdown(); + delete controller; } diff --git a/Controllers/ASRockSMBusController/ASRockPolychromeV1SMBusController/RGBController_ASRockPolychromeV1SMBus.cpp b/Controllers/ASRockSMBusController/ASRockPolychromeV1SMBusController/RGBController_ASRockPolychromeV1SMBus.cpp index c524d8783..5a065c12c 100644 --- a/Controllers/ASRockSMBusController/ASRockPolychromeV1SMBusController/RGBController_ASRockPolychromeV1SMBus.cpp +++ b/Controllers/ASRockSMBusController/ASRockPolychromeV1SMBusController/RGBController_ASRockPolychromeV1SMBus.cpp @@ -230,6 +230,8 @@ RGBController_ASRockPolychromeV1SMBus::RGBController_ASRockPolychromeV1SMBus(ASR RGBController_ASRockPolychromeV1SMBus::~RGBController_ASRockPolychromeV1SMBus() { + Shutdown(); + delete controller; } diff --git a/Controllers/ASRockSMBusController/ASRockPolychromeV2SMBusController/RGBController_ASRockPolychromeV2SMBus.cpp b/Controllers/ASRockSMBusController/ASRockPolychromeV2SMBusController/RGBController_ASRockPolychromeV2SMBus.cpp index 8dbbd964b..46d18da4d 100644 --- a/Controllers/ASRockSMBusController/ASRockPolychromeV2SMBusController/RGBController_ASRockPolychromeV2SMBus.cpp +++ b/Controllers/ASRockSMBusController/ASRockPolychromeV2SMBusController/RGBController_ASRockPolychromeV2SMBus.cpp @@ -185,6 +185,8 @@ RGBController_ASRockPolychromeV2SMBus::RGBController_ASRockPolychromeV2SMBus(ASR RGBController_ASRockPolychromeV2SMBus::~RGBController_ASRockPolychromeV2SMBus() { + Shutdown(); + delete controller; } diff --git a/Controllers/AlienwareController/RGBController_Alienware.cpp b/Controllers/AlienwareController/RGBController_Alienware.cpp index 49d1e22a4..4ae388d7b 100644 --- a/Controllers/AlienwareController/RGBController_Alienware.cpp +++ b/Controllers/AlienwareController/RGBController_Alienware.cpp @@ -125,6 +125,13 @@ RGBController_Alienware::RGBController_Alienware(AlienwareController* controller controller->UpdateDim(); } +RGBController_Alienware::~RGBController_Alienware() +{ + Shutdown(); + + delete controller; +} + void RGBController_Alienware::SetupZones() { /*-------------------------------------------------*\ diff --git a/Controllers/AlienwareController/RGBController_Alienware.h b/Controllers/AlienwareController/RGBController_Alienware.h index ffcd6da55..b3ebb7206 100644 --- a/Controllers/AlienwareController/RGBController_Alienware.h +++ b/Controllers/AlienwareController/RGBController_Alienware.h @@ -19,6 +19,7 @@ class RGBController_Alienware : public RGBController { public: RGBController_Alienware(AlienwareController* controller_ptr); + ~RGBController_Alienware(); void SetupZones(); diff --git a/Controllers/AlienwareKeyboardController/AlienwareAW410KController/RGBController_AlienwareAW410K.cpp b/Controllers/AlienwareKeyboardController/AlienwareAW410KController/RGBController_AlienwareAW410K.cpp index 76bbeaf52..8b276783f 100644 --- a/Controllers/AlienwareKeyboardController/AlienwareAW410KController/RGBController_AlienwareAW410K.cpp +++ b/Controllers/AlienwareKeyboardController/AlienwareAW410KController/RGBController_AlienwareAW410K.cpp @@ -278,6 +278,8 @@ RGBController_AlienwareAW410K::RGBController_AlienwareAW410K(AlienwareAW410KCont RGBController_AlienwareAW410K::~RGBController_AlienwareAW410K() { + Shutdown(); + delete controller; } diff --git a/Controllers/AlienwareKeyboardController/AlienwareAW510KController/RGBController_AlienwareAW510K.cpp b/Controllers/AlienwareKeyboardController/AlienwareAW510KController/RGBController_AlienwareAW510K.cpp index 06488f1d6..98d3f36d1 100644 --- a/Controllers/AlienwareKeyboardController/AlienwareAW510KController/RGBController_AlienwareAW510K.cpp +++ b/Controllers/AlienwareKeyboardController/AlienwareAW510KController/RGBController_AlienwareAW510K.cpp @@ -277,6 +277,8 @@ RGBController_AlienwareAW510K::RGBController_AlienwareAW510K(AlienwareAW510KCont RGBController_AlienwareAW510K::~RGBController_AlienwareAW510K() { + Shutdown(); + delete controller; } diff --git a/Controllers/AlienwareMonitorController/RGBController_AlienwareAW3423DWF.cpp b/Controllers/AlienwareMonitorController/RGBController_AlienwareAW3423DWF.cpp index 8270b6e88..4409f82dd 100644 --- a/Controllers/AlienwareMonitorController/RGBController_AlienwareAW3423DWF.cpp +++ b/Controllers/AlienwareMonitorController/RGBController_AlienwareAW3423DWF.cpp @@ -46,6 +46,8 @@ RGBController_AlienwareAW3423DWF::RGBController_AlienwareAW3423DWF(AlienwareAW34 RGBController_AlienwareAW3423DWF::~RGBController_AlienwareAW3423DWF() { + Shutdown(); + delete controller; } diff --git a/Controllers/AlienwareMonitorController/RGBController_AlienwareMonitor.cpp b/Controllers/AlienwareMonitorController/RGBController_AlienwareMonitor.cpp index 8a247a242..a64cc56c5 100644 --- a/Controllers/AlienwareMonitorController/RGBController_AlienwareMonitor.cpp +++ b/Controllers/AlienwareMonitorController/RGBController_AlienwareMonitor.cpp @@ -46,6 +46,8 @@ RGBController_AlienwareMonitor::RGBController_AlienwareMonitor(AlienwareMonitorC RGBController_AlienwareMonitor::~RGBController_AlienwareMonitor() { + Shutdown(); + delete controller; } diff --git a/Controllers/AnnePro2Controller/RGBController_AnnePro2.cpp b/Controllers/AnnePro2Controller/RGBController_AnnePro2.cpp index 5a537ff9a..f90a689ba 100644 --- a/Controllers/AnnePro2Controller/RGBController_AnnePro2.cpp +++ b/Controllers/AnnePro2Controller/RGBController_AnnePro2.cpp @@ -144,6 +144,8 @@ RGBController_AnnePro2::RGBController_AnnePro2(AnnePro2Controller* controller_pt RGBController_AnnePro2::~RGBController_AnnePro2() { + Shutdown(); + delete controller; } diff --git a/Controllers/ArcticController/RGBController_Arctic.cpp b/Controllers/ArcticController/RGBController_Arctic.cpp index 1eea37236..5e46322fe 100644 --- a/Controllers/ArcticController/RGBController_Arctic.cpp +++ b/Controllers/ArcticController/RGBController_Arctic.cpp @@ -55,6 +55,8 @@ RGBController_Arctic::RGBController_Arctic(ArcticController* controller_ptr) RGBController_Arctic::~RGBController_Arctic() { + Shutdown(); + keepalive_thread_run = false; keepalive_thread.join(); delete controller; diff --git a/Controllers/AresonController/RGBController_Areson.cpp b/Controllers/AresonController/RGBController_Areson.cpp index 388517da6..d840d763a 100644 --- a/Controllers/AresonController/RGBController_Areson.cpp +++ b/Controllers/AresonController/RGBController_Areson.cpp @@ -125,6 +125,8 @@ RGBController_Areson::RGBController_Areson(AresonController* controller_ptr) RGBController_Areson::~RGBController_Areson() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraCoreController/AsusAuraCoreController/RGBController_AsusAuraCore.cpp b/Controllers/AsusAuraCoreController/AsusAuraCoreController/RGBController_AsusAuraCore.cpp index 248b3f5c6..a17a4192c 100644 --- a/Controllers/AsusAuraCoreController/AsusAuraCoreController/RGBController_AsusAuraCore.cpp +++ b/Controllers/AsusAuraCoreController/AsusAuraCoreController/RGBController_AsusAuraCore.cpp @@ -45,6 +45,13 @@ RGBController_AuraCore::RGBController_AuraCore(AuraCoreController* controller_pt SetupZones(); } +RGBController_AuraCore::~RGBController_AuraCore() +{ + Shutdown(); + + delete controller; +} + void RGBController_AuraCore::SetupKeyboard() { name = "ASUS Aura Keyboard"; @@ -170,11 +177,6 @@ void RGBController_AuraCore::SetupGA15DH() modes.push_back(Static); } -RGBController_AuraCore::~RGBController_AuraCore() -{ - delete controller; -} - void RGBController_AuraCore::SetupZones() { zone auraZone; diff --git a/Controllers/AsusAuraCoreController/AsusAuraCoreLaptopController/RGBController_AsusAuraCoreLaptop.cpp b/Controllers/AsusAuraCoreController/AsusAuraCoreLaptopController/RGBController_AsusAuraCoreLaptop.cpp index caacb2c6b..7103fa60b 100644 --- a/Controllers/AsusAuraCoreController/AsusAuraCoreLaptopController/RGBController_AsusAuraCoreLaptop.cpp +++ b/Controllers/AsusAuraCoreController/AsusAuraCoreLaptopController/RGBController_AsusAuraCoreLaptop.cpp @@ -268,6 +268,8 @@ RGBController_AsusAuraCoreLaptop::RGBController_AsusAuraCoreLaptop(AsusAuraCoreL RGBController_AsusAuraCoreLaptop::~RGBController_AsusAuraCoreLaptop() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraGPUController/RGBController_AsusAuraGPU.cpp b/Controllers/AsusAuraGPUController/RGBController_AsusAuraGPU.cpp index 3ecf33683..d238dcd75 100644 --- a/Controllers/AsusAuraGPUController/RGBController_AsusAuraGPU.cpp +++ b/Controllers/AsusAuraGPUController/RGBController_AsusAuraGPU.cpp @@ -124,6 +124,8 @@ RGBController_AuraGPU::RGBController_AuraGPU(AuraGPUController * controller_ptr) RGBController_AuraGPU::~RGBController_AuraGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraHeadsetStandController/RGBController_AsusAuraHeadsetStand.cpp b/Controllers/AsusAuraUSBController/AsusAuraHeadsetStandController/RGBController_AsusAuraHeadsetStand.cpp index 5792e0512..a74d14992 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraHeadsetStandController/RGBController_AsusAuraHeadsetStand.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraHeadsetStandController/RGBController_AsusAuraHeadsetStand.cpp @@ -112,6 +112,8 @@ RGBController_AuraHeadsetStand::RGBController_AuraHeadsetStand(AuraHeadsetStandC RGBController_AuraHeadsetStand::~RGBController_AuraHeadsetStand() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraKeyboardController/RGBController_AsusAuraKeyboard.cpp b/Controllers/AsusAuraUSBController/AsusAuraKeyboardController/RGBController_AsusAuraKeyboard.cpp index 7a085c7d4..513d0878a 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraKeyboardController/RGBController_AsusAuraKeyboard.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraKeyboardController/RGBController_AsusAuraKeyboard.cpp @@ -380,6 +380,8 @@ RGBController_AuraKeyboard::RGBController_AuraKeyboard(AuraKeyboardController* c RGBController_AuraKeyboard::~RGBController_AuraKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraMonitorController/RGBController_AsusAuraMonitor.cpp b/Controllers/AsusAuraUSBController/AsusAuraMonitorController/RGBController_AsusAuraMonitor.cpp index 0d0241b8e..b5957773a 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraMonitorController/RGBController_AsusAuraMonitor.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraMonitorController/RGBController_AsusAuraMonitor.cpp @@ -45,6 +45,8 @@ RGBController_AuraMonitor::RGBController_AuraMonitor(AuraMonitorController* cont RGBController_AuraMonitor::~RGBController_AuraMonitor() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraMouseController/RGBController_AsusAuraMouse.cpp b/Controllers/AsusAuraUSBController/AsusAuraMouseController/RGBController_AsusAuraMouse.cpp index 666d738a7..1d5bc833e 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraMouseController/RGBController_AsusAuraMouse.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraMouseController/RGBController_AsusAuraMouse.cpp @@ -185,6 +185,8 @@ RGBController_AuraMouse::RGBController_AuraMouse(AuraMouseController* controller RGBController_AuraMouse::~RGBController_AuraMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGSpatha.cpp b/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGSpatha.cpp index c7491c5ae..785c20931 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGSpatha.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGSpatha.cpp @@ -116,6 +116,8 @@ RGBController_AsusROGSpatha::RGBController_AsusROGSpatha(AsusAuraMouseGen1Contro RGBController_AsusROGSpatha::~RGBController_AsusROGSpatha() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGStrixEvolve.cpp b/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGStrixEvolve.cpp index 8b700c2a4..978754b13 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGStrixEvolve.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraMouseGen1Controller/RGBController_AsusROGStrixEvolve.cpp @@ -79,6 +79,8 @@ RGBController_AsusROGStrixEvolve::RGBController_AsusROGStrixEvolve(AsusAuraMouse RGBController_AsusROGStrixEvolve::~RGBController_AsusROGStrixEvolve() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraMousematController/RGBController_AsusAuraMousemat.cpp b/Controllers/AsusAuraUSBController/AsusAuraMousematController/RGBController_AsusAuraMousemat.cpp index 31f39f635..b81c12837 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraMousematController/RGBController_AsusAuraMousemat.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraMousematController/RGBController_AsusAuraMousemat.cpp @@ -182,6 +182,8 @@ RGBController_AuraMousemat::RGBController_AuraMousemat(AuraMousematController* c RGBController_AuraMousemat::~RGBController_AuraMousemat() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraRyuoAIOController/RGBController_AsusAuraRyuoAIO.cpp b/Controllers/AsusAuraUSBController/AsusAuraRyuoAIOController/RGBController_AsusAuraRyuoAIO.cpp index f4b7ccba9..3fe0acfb6 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraRyuoAIOController/RGBController_AsusAuraRyuoAIO.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraRyuoAIOController/RGBController_AsusAuraRyuoAIO.cpp @@ -128,6 +128,8 @@ RGBController_AsusAuraRyuoAIO::RGBController_AsusAuraRyuoAIO(AsusAuraRyuoAIOCont RGBController_AsusAuraRyuoAIO::~RGBController_AsusAuraRyuoAIO() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/RGBController_AsusAuraTUFKeyboard.cpp b/Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/RGBController_AsusAuraTUFKeyboard.cpp index a2f38c0f0..a6ecc6006 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/RGBController_AsusAuraTUFKeyboard.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraTUFKeyboardController/RGBController_AsusAuraTUFKeyboard.cpp @@ -410,6 +410,8 @@ RGBController_AuraTUFKeyboard::RGBController_AuraTUFKeyboard(AuraTUFKeyboardCont RGBController_AuraTUFKeyboard::~RGBController_AuraTUFKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusAuraUSBController/RGBController_AsusAuraUSB.cpp b/Controllers/AsusAuraUSBController/AsusAuraUSBController/RGBController_AsusAuraUSB.cpp index 1a4f6ebe6..3d1405c21 100644 --- a/Controllers/AsusAuraUSBController/AsusAuraUSBController/RGBController_AsusAuraUSB.cpp +++ b/Controllers/AsusAuraUSBController/AsusAuraUSBController/RGBController_AsusAuraUSB.cpp @@ -119,6 +119,8 @@ RGBController_AuraUSB::RGBController_AuraUSB(AuraUSBController* controller_ptr) RGBController_AuraUSB::~RGBController_AuraUSB() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusROGAllyController/RGBController_AsusROGAlly.cpp b/Controllers/AsusAuraUSBController/AsusROGAllyController/RGBController_AsusROGAlly.cpp index 2fa4a6331..7dedc0c5f 100644 --- a/Controllers/AsusAuraUSBController/AsusROGAllyController/RGBController_AsusROGAlly.cpp +++ b/Controllers/AsusAuraUSBController/AsusROGAllyController/RGBController_AsusROGAlly.cpp @@ -117,6 +117,8 @@ RGBController_AsusROGAlly::RGBController_AsusROGAlly(ROGAllyController* controll RGBController_AsusROGAlly::~RGBController_AsusROGAlly() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusAuraUSBController/AsusROGStrixLCController/RGBController_AsusROGStrixLC.cpp b/Controllers/AsusAuraUSBController/AsusROGStrixLCController/RGBController_AsusROGStrixLC.cpp index 0a8be8872..ec66e9880 100644 --- a/Controllers/AsusAuraUSBController/AsusROGStrixLCController/RGBController_AsusROGStrixLC.cpp +++ b/Controllers/AsusAuraUSBController/AsusROGStrixLCController/RGBController_AsusROGStrixLC.cpp @@ -129,6 +129,8 @@ RGBController_AsusROGStrixLC::RGBController_AsusROGStrixLC(AsusROGStrixLCControl RGBController_AsusROGStrixLC::~RGBController_AsusROGStrixLC() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusLegacyUSBController/AsusCerberusKeyboardController/RGBController_AsusCerberusKeyboard.cpp b/Controllers/AsusLegacyUSBController/AsusCerberusKeyboardController/RGBController_AsusCerberusKeyboard.cpp index 551ac8c2e..0f3feaadb 100644 --- a/Controllers/AsusLegacyUSBController/AsusCerberusKeyboardController/RGBController_AsusCerberusKeyboard.cpp +++ b/Controllers/AsusLegacyUSBController/AsusCerberusKeyboardController/RGBController_AsusCerberusKeyboard.cpp @@ -283,6 +283,8 @@ RGBController_AsusCerberusKeyboard::RGBController_AsusCerberusKeyboard(AsusCerbe RGBController_AsusCerberusKeyboard::~RGBController_AsusCerberusKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusLegacyUSBController/AsusSagarisKeyboardController/RGBController_AsusSagarisKeyboard.cpp b/Controllers/AsusLegacyUSBController/AsusSagarisKeyboardController/RGBController_AsusSagarisKeyboard.cpp index 1cd14a988..8408f3bfd 100644 --- a/Controllers/AsusLegacyUSBController/AsusSagarisKeyboardController/RGBController_AsusSagarisKeyboard.cpp +++ b/Controllers/AsusLegacyUSBController/AsusSagarisKeyboardController/RGBController_AsusSagarisKeyboard.cpp @@ -165,6 +165,8 @@ RGBController_AsusSagarisKeyboard::RGBController_AsusSagarisKeyboard(AsusSagaris RGBController_AsusSagarisKeyboard::~RGBController_AsusSagarisKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusMonitorController/RGBController_AsusMonitor.cpp b/Controllers/AsusMonitorController/RGBController_AsusMonitor.cpp index bd8a0ad4e..921680118 100644 --- a/Controllers/AsusMonitorController/RGBController_AsusMonitor.cpp +++ b/Controllers/AsusMonitorController/RGBController_AsusMonitor.cpp @@ -46,6 +46,8 @@ RGBController_AsusMonitor::RGBController_AsusMonitor(AsusMonitorController* cont RGBController_AsusMonitor::~RGBController_AsusMonitor() { + Shutdown(); + delete controller; } diff --git a/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.cpp b/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.cpp index 4761f82a2..54a6f720e 100644 --- a/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.cpp +++ b/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.cpp @@ -92,6 +92,13 @@ RGBController_AsusTUFLaptopLinux::RGBController_AsusTUFLaptopLinux(AsusTUFLaptop SetupZones(); } +RGBController_AsusTUFLaptopLinux::~RGBController_AsusTUFLaptopLinux() +{ + Shutdown(); + + delete controller; +} + void RGBController_AsusTUFLaptopLinux::SetupZones() { /*---------------------------------------------------------*\ diff --git a/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.h b/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.h index f7b0071be..09437bfa9 100644 --- a/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.h +++ b/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Linux.h @@ -16,6 +16,7 @@ class RGBController_AsusTUFLaptopLinux : public RGBController { public: RGBController_AsusTUFLaptopLinux(AsusTUFLaptopLinuxController* controller_ptr); + ~RGBController_AsusTUFLaptopLinux(); void SetupZones(); diff --git a/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Windows.cpp b/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Windows.cpp index 6cd4a13c8..b6f96cafb 100644 --- a/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Windows.cpp +++ b/Controllers/AsusTUFLaptopController/RGBController_AsusTUFLaptop_Windows.cpp @@ -85,6 +85,8 @@ RGBController_AsusTUFLaptopWMI::RGBController_AsusTUFLaptopWMI(AsusTUFLaptopCont RGBController_AsusTUFLaptopWMI::~RGBController_AsusTUFLaptopWMI() { + Shutdown(); + delete controller; } diff --git a/Controllers/BlinkyTapeController/RGBController_BlinkyTape.cpp b/Controllers/BlinkyTapeController/RGBController_BlinkyTape.cpp index 99695baea..0835df071 100644 --- a/Controllers/BlinkyTapeController/RGBController_BlinkyTape.cpp +++ b/Controllers/BlinkyTapeController/RGBController_BlinkyTape.cpp @@ -44,6 +44,8 @@ RGBController_BlinkyTape::RGBController_BlinkyTape(BlinkyTapeController* control RGBController_BlinkyTape::~RGBController_BlinkyTape() { + Shutdown(); + delete controller; } diff --git a/Controllers/CherryKeyboardController/RGBController_CherryKeyboard.cpp b/Controllers/CherryKeyboardController/RGBController_CherryKeyboard.cpp index 280f15f38..8a1626479 100644 --- a/Controllers/CherryKeyboardController/RGBController_CherryKeyboard.cpp +++ b/Controllers/CherryKeyboardController/RGBController_CherryKeyboard.cpp @@ -312,6 +312,8 @@ RGBController_CherryKeyboard::RGBController_CherryKeyboard(CherryKeyboardControl RGBController_CherryKeyboard::~RGBController_CherryKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/ClevoKeyboardController/RGBController_ClevoKeyboard.cpp b/Controllers/ClevoKeyboardController/RGBController_ClevoKeyboard.cpp index e33674052..142dec644 100644 --- a/Controllers/ClevoKeyboardController/RGBController_ClevoKeyboard.cpp +++ b/Controllers/ClevoKeyboardController/RGBController_ClevoKeyboard.cpp @@ -199,6 +199,8 @@ RGBController_ClevoKeyboard::RGBController_ClevoKeyboard(ClevoKeyboardController RGBController_ClevoKeyboard::~RGBController_ClevoKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/ClevoLightbarController/RGBController_ClevoLightbar.cpp b/Controllers/ClevoLightbarController/RGBController_ClevoLightbar.cpp index 68fabb2ff..7558950c3 100644 --- a/Controllers/ClevoLightbarController/RGBController_ClevoLightbar.cpp +++ b/Controllers/ClevoLightbarController/RGBController_ClevoLightbar.cpp @@ -121,6 +121,8 @@ RGBController_ClevoLightbar::RGBController_ClevoLightbar(ClevoLightbarController RGBController_ClevoLightbar::~RGBController_ClevoLightbar() { + Shutdown(); + delete controller; } diff --git a/Controllers/ColorfulGPUController/RGBController_ColorfulGPU.cpp b/Controllers/ColorfulGPUController/RGBController_ColorfulGPU.cpp index 20e070e61..90579bdb2 100644 --- a/Controllers/ColorfulGPUController/RGBController_ColorfulGPU.cpp +++ b/Controllers/ColorfulGPUController/RGBController_ColorfulGPU.cpp @@ -44,6 +44,8 @@ RGBController_ColorfulGPU::RGBController_ColorfulGPU(ColorfulGPUController * col RGBController_ColorfulGPU::~RGBController_ColorfulGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/ColorfulTuringGPUController/RGBController_ColorfulTuringGPU.cpp b/Controllers/ColorfulTuringGPUController/RGBController_ColorfulTuringGPU.cpp index 59acc4592..09b799603 100644 --- a/Controllers/ColorfulTuringGPUController/RGBController_ColorfulTuringGPU.cpp +++ b/Controllers/ColorfulTuringGPUController/RGBController_ColorfulTuringGPU.cpp @@ -75,6 +75,8 @@ RGBController_ColorfulTuringGPU::RGBController_ColorfulTuringGPU(ColorfulTuringG RGBController_ColorfulTuringGPU::~RGBController_ColorfulTuringGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMARGBController/RGBController_CMARGBController.cpp b/Controllers/CoolerMasterController/CMARGBController/RGBController_CMARGBController.cpp index a1ce62c79..a72730167 100644 --- a/Controllers/CoolerMasterController/CMARGBController/RGBController_CMARGBController.cpp +++ b/Controllers/CoolerMasterController/CMARGBController/RGBController_CMARGBController.cpp @@ -293,6 +293,8 @@ RGBController_CMARGBController::RGBController_CMARGBController(CMARGBController* RGBController_CMARGBController::~RGBController_CMARGBController() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMARGBGen2A1Controller/RGBController_CMARGBGen2A1Controller.cpp b/Controllers/CoolerMasterController/CMARGBGen2A1Controller/RGBController_CMARGBGen2A1Controller.cpp index 7bbeeb18e..edb922cc3 100644 --- a/Controllers/CoolerMasterController/CMARGBGen2A1Controller/RGBController_CMARGBGen2A1Controller.cpp +++ b/Controllers/CoolerMasterController/CMARGBGen2A1Controller/RGBController_CMARGBGen2A1Controller.cpp @@ -186,6 +186,8 @@ RGBController_CMARGBGen2A1Controller::RGBController_CMARGBGen2A1Controller(CMARG RGBController_CMARGBGen2A1Controller::~RGBController_CMARGBGen2A1Controller() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMGD160Controller/RGBController_CMGD160Controller.cpp b/Controllers/CoolerMasterController/CMGD160Controller/RGBController_CMGD160Controller.cpp index 243b5952e..b324b04c8 100644 --- a/Controllers/CoolerMasterController/CMGD160Controller/RGBController_CMGD160Controller.cpp +++ b/Controllers/CoolerMasterController/CMGD160Controller/RGBController_CMGD160Controller.cpp @@ -140,6 +140,8 @@ RGBController_CMGD160Controller::RGBController_CMGD160Controller(CMGD160Controll RGBController_CMGD160Controller::~RGBController_CMGD160Controller() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMKeyboardController/RGBController_CMKeyboardController.cpp b/Controllers/CoolerMasterController/CMKeyboardController/RGBController_CMKeyboardController.cpp index 90c99634e..af2e88930 100644 --- a/Controllers/CoolerMasterController/CMKeyboardController/RGBController_CMKeyboardController.cpp +++ b/Controllers/CoolerMasterController/CMKeyboardController/RGBController_CMKeyboardController.cpp @@ -49,6 +49,8 @@ RGBController_CMKeyboardController::RGBController_CMKeyboardController(CMKeyboar RGBController_CMKeyboardController::~RGBController_CMKeyboardController() { + Shutdown(); + if(m_pController) { delete m_pController; diff --git a/Controllers/CoolerMasterController/CMMM711Controller/RGBController_CMMM711Controller.cpp b/Controllers/CoolerMasterController/CMMM711Controller/RGBController_CMMM711Controller.cpp index 9b149099b..e73fbf5ba 100644 --- a/Controllers/CoolerMasterController/CMMM711Controller/RGBController_CMMM711Controller.cpp +++ b/Controllers/CoolerMasterController/CMMM711Controller/RGBController_CMMM711Controller.cpp @@ -129,6 +129,8 @@ RGBController_CMMM711Controller::RGBController_CMMM711Controller(CMMM711Controll RGBController_CMMM711Controller::~RGBController_CMMM711Controller() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMMM712Controller/RGBController_CMMM712Controller.cpp b/Controllers/CoolerMasterController/CMMM712Controller/RGBController_CMMM712Controller.cpp index 4712d6b18..14ac338d6 100644 --- a/Controllers/CoolerMasterController/CMMM712Controller/RGBController_CMMM712Controller.cpp +++ b/Controllers/CoolerMasterController/CMMM712Controller/RGBController_CMMM712Controller.cpp @@ -122,6 +122,8 @@ RGBController_CMMM712Controller::RGBController_CMMM712Controller(CMMM712Controll RGBController_CMMM712Controller::~RGBController_CMMM712Controller() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMMMController/RGBController_CMMMController.cpp b/Controllers/CoolerMasterController/CMMMController/RGBController_CMMMController.cpp index ed7dc088e..84f90b34f 100644 --- a/Controllers/CoolerMasterController/CMMMController/RGBController_CMMMController.cpp +++ b/Controllers/CoolerMasterController/CMMMController/RGBController_CMMMController.cpp @@ -168,6 +168,8 @@ RGBController_CMMMController::RGBController_CMMMController(CMMMController* contr RGBController_CMMMController::~RGBController_CMMMController() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMMP750Controller/RGBController_CMMP750Controller.cpp b/Controllers/CoolerMasterController/CMMP750Controller/RGBController_CMMP750Controller.cpp index 56913d955..30aa4b086 100644 --- a/Controllers/CoolerMasterController/CMMP750Controller/RGBController_CMMP750Controller.cpp +++ b/Controllers/CoolerMasterController/CMMP750Controller/RGBController_CMMP750Controller.cpp @@ -93,6 +93,8 @@ RGBController_CMMP750Controller::RGBController_CMMP750Controller(CMMP750Controll RGBController_CMMP750Controller::~RGBController_CMMP750Controller() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMMonitorController/RGBController_CMMonitorController.cpp b/Controllers/CoolerMasterController/CMMonitorController/RGBController_CMMonitorController.cpp index bd802058a..073195aa6 100644 --- a/Controllers/CoolerMasterController/CMMonitorController/RGBController_CMMonitorController.cpp +++ b/Controllers/CoolerMasterController/CMMonitorController/RGBController_CMMonitorController.cpp @@ -141,6 +141,8 @@ RGBController_CMMonitorController::RGBController_CMMonitorController(CMMonitorCo RGBController_CMMonitorController::~RGBController_CMMonitorController() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMR6000Controller/RGBController_CMR6000Controller.cpp b/Controllers/CoolerMasterController/CMR6000Controller/RGBController_CMR6000Controller.cpp index a42a9717e..728b11a04 100644 --- a/Controllers/CoolerMasterController/CMR6000Controller/RGBController_CMR6000Controller.cpp +++ b/Controllers/CoolerMasterController/CMR6000Controller/RGBController_CMR6000Controller.cpp @@ -152,6 +152,8 @@ RGBController_CMR6000Controller::RGBController_CMR6000Controller(CMR6000Controll RGBController_CMR6000Controller::~RGBController_CMR6000Controller() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMRGBController/RGBController_CMRGBController.cpp b/Controllers/CoolerMasterController/CMRGBController/RGBController_CMRGBController.cpp index a4d940e1c..9c3d73b45 100644 --- a/Controllers/CoolerMasterController/CMRGBController/RGBController_CMRGBController.cpp +++ b/Controllers/CoolerMasterController/CMRGBController/RGBController_CMRGBController.cpp @@ -153,6 +153,8 @@ RGBController_CMRGBController::RGBController_CMRGBController(CMRGBController* co RGBController_CMRGBController::~RGBController_CMRGBController() { + Shutdown(); + delete controller; } diff --git a/Controllers/CoolerMasterController/CMSmallARGBController/RGBController_CMSmallARGBController.cpp b/Controllers/CoolerMasterController/CMSmallARGBController/RGBController_CMSmallARGBController.cpp index 869dcb7e1..0eaadc848 100644 --- a/Controllers/CoolerMasterController/CMSmallARGBController/RGBController_CMSmallARGBController.cpp +++ b/Controllers/CoolerMasterController/CMSmallARGBController/RGBController_CMSmallARGBController.cpp @@ -181,6 +181,8 @@ RGBController_CMSmallARGBController::RGBController_CMSmallARGBController(CMSmall RGBController_CMSmallARGBController::~RGBController_CMSmallARGBController() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairCommanderCoreController/RGBController_CorsairCommanderCore.cpp b/Controllers/CorsairCommanderCoreController/RGBController_CorsairCommanderCore.cpp index b4ea5f9ef..18d714078 100644 --- a/Controllers/CorsairCommanderCoreController/RGBController_CorsairCommanderCore.cpp +++ b/Controllers/CorsairCommanderCoreController/RGBController_CorsairCommanderCore.cpp @@ -71,6 +71,8 @@ RGBController_CorsairCommanderCore::RGBController_CorsairCommanderCore(CorsairCo RGBController_CorsairCommanderCore::~RGBController_CorsairCommanderCore() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairDominatorPlatinumController/RGBController_CorsairDominatorPlatinum.cpp b/Controllers/CorsairDominatorPlatinumController/RGBController_CorsairDominatorPlatinum.cpp index 850e13609..dd101a763 100644 --- a/Controllers/CorsairDominatorPlatinumController/RGBController_CorsairDominatorPlatinum.cpp +++ b/Controllers/CorsairDominatorPlatinumController/RGBController_CorsairDominatorPlatinum.cpp @@ -59,6 +59,8 @@ RGBController_CorsairDominatorPlatinum::RGBController_CorsairDominatorPlatinum(C RGBController_CorsairDominatorPlatinum::~RGBController_CorsairDominatorPlatinum() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairHydro2Controller/RGBController_CorsairHydro2.cpp b/Controllers/CorsairHydro2Controller/RGBController_CorsairHydro2.cpp index e732a9c3e..36f7886a2 100644 --- a/Controllers/CorsairHydro2Controller/RGBController_CorsairHydro2.cpp +++ b/Controllers/CorsairHydro2Controller/RGBController_CorsairHydro2.cpp @@ -44,6 +44,8 @@ RGBController_CorsairHydro2::RGBController_CorsairHydro2(CorsairHydro2Controller RGBController_CorsairHydro2::~RGBController_CorsairHydro2() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairHydroController/RGBController_CorsairHydro.cpp b/Controllers/CorsairHydroController/RGBController_CorsairHydro.cpp index 5008aa970..90f084277 100644 --- a/Controllers/CorsairHydroController/RGBController_CorsairHydro.cpp +++ b/Controllers/CorsairHydroController/RGBController_CorsairHydro.cpp @@ -84,6 +84,8 @@ RGBController_CorsairHydro::RGBController_CorsairHydro(CorsairHydroController* c RGBController_CorsairHydro::~RGBController_CorsairHydro() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairHydroPlatinumController/RGBController_CorsairHydroPlatinum.cpp b/Controllers/CorsairHydroPlatinumController/RGBController_CorsairHydroPlatinum.cpp index e3f4f58c8..7872f4519 100644 --- a/Controllers/CorsairHydroPlatinumController/RGBController_CorsairHydroPlatinum.cpp +++ b/Controllers/CorsairHydroPlatinumController/RGBController_CorsairHydroPlatinum.cpp @@ -57,6 +57,8 @@ RGBController_CorsairHydroPlatinum::RGBController_CorsairHydroPlatinum(CorsairHy RGBController_CorsairHydroPlatinum::~RGBController_CorsairHydroPlatinum() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairICueLinkController/RGBController_CorsairICueLink.cpp b/Controllers/CorsairICueLinkController/RGBController_CorsairICueLink.cpp index fc9801741..5b4fb4ef3 100644 --- a/Controllers/CorsairICueLinkController/RGBController_CorsairICueLink.cpp +++ b/Controllers/CorsairICueLinkController/RGBController_CorsairICueLink.cpp @@ -54,6 +54,8 @@ RGBController_CorsairICueLink::RGBController_CorsairICueLink(CorsairICueLinkCont RGBController_CorsairICueLink::~RGBController_CorsairICueLink() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/CorsairLightingNodeController/RGBController_CorsairLightingNode.cpp b/Controllers/CorsairLightingNodeController/RGBController_CorsairLightingNode.cpp index 1ef706e9c..ffd739439 100644 --- a/Controllers/CorsairLightingNodeController/RGBController_CorsairLightingNode.cpp +++ b/Controllers/CorsairLightingNodeController/RGBController_CorsairLightingNode.cpp @@ -40,6 +40,8 @@ RGBController_CorsairLightingNode::RGBController_CorsairLightingNode(CorsairLigh RGBController_CorsairLightingNode::~RGBController_CorsairLightingNode() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairPeripheralController/RGBController_CorsairK55RGBPROXT.cpp b/Controllers/CorsairPeripheralController/RGBController_CorsairK55RGBPROXT.cpp index 2a644df1d..8ea412b03 100644 --- a/Controllers/CorsairPeripheralController/RGBController_CorsairK55RGBPROXT.cpp +++ b/Controllers/CorsairPeripheralController/RGBController_CorsairK55RGBPROXT.cpp @@ -353,6 +353,8 @@ RGBController_CorsairK55RGBPROXT::RGBController_CorsairK55RGBPROXT(CorsairK55RGB RGBController_CorsairK55RGBPROXT::~RGBController_CorsairK55RGBPROXT() { + Shutdown(); + /*-----------------------------------------------------*\ | Close keepalive thread | \*-----------------------------------------------------*/ diff --git a/Controllers/CorsairPeripheralController/RGBController_CorsairK65Mini.cpp b/Controllers/CorsairPeripheralController/RGBController_CorsairK65Mini.cpp index aaff46877..1ff93e1e4 100644 --- a/Controllers/CorsairPeripheralController/RGBController_CorsairK65Mini.cpp +++ b/Controllers/CorsairPeripheralController/RGBController_CorsairK65Mini.cpp @@ -166,6 +166,8 @@ RGBController_CorsairK65Mini::RGBController_CorsairK65Mini(CorsairK65MiniControl RGBController_CorsairK65Mini::~RGBController_CorsairK65Mini() { + Shutdown(); + /*-----------------------------------------------------*\ | Close keepalive thread | \*-----------------------------------------------------*/ diff --git a/Controllers/CorsairPeripheralController/RGBController_CorsairPeripheral.cpp b/Controllers/CorsairPeripheralController/RGBController_CorsairPeripheral.cpp index 899f18cd4..5a228c312 100644 --- a/Controllers/CorsairPeripheralController/RGBController_CorsairPeripheral.cpp +++ b/Controllers/CorsairPeripheralController/RGBController_CorsairPeripheral.cpp @@ -929,6 +929,8 @@ RGBController_CorsairPeripheral::RGBController_CorsairPeripheral(CorsairPeripher RGBController_CorsairPeripheral::~RGBController_CorsairPeripheral() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Hardware.cpp b/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Hardware.cpp index 789c62169..4dc34f121 100644 --- a/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Hardware.cpp +++ b/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Hardware.cpp @@ -72,6 +72,8 @@ RGBController_CorsairV2HW::RGBController_CorsairV2HW(CorsairPeripheralV2Controll RGBController_CorsairV2HW::~RGBController_CorsairV2HW() { + Shutdown(); + /*-----------------------------------------------------*\ | Close keepalive thread | \*-----------------------------------------------------*/ diff --git a/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Software.cpp b/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Software.cpp index 41b5c10bd..93f64bb58 100644 --- a/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Software.cpp +++ b/Controllers/CorsairPeripheralV2Controller/RGBController_CorsairV2Software.cpp @@ -59,6 +59,8 @@ RGBController_CorsairV2SW::RGBController_CorsairV2SW(CorsairPeripheralV2Controll RGBController_CorsairV2SW::~RGBController_CorsairV2SW() { + Shutdown(); + /*-----------------------------------------------------*\ | Close keepalive thread | \*-----------------------------------------------------*/ diff --git a/Controllers/CorsairVengeanceController/RGBController_CorsairVengeance.cpp b/Controllers/CorsairVengeanceController/RGBController_CorsairVengeance.cpp index 0e895a53a..e64c3f636 100644 --- a/Controllers/CorsairVengeanceController/RGBController_CorsairVengeance.cpp +++ b/Controllers/CorsairVengeanceController/RGBController_CorsairVengeance.cpp @@ -59,6 +59,8 @@ RGBController_CorsairVengeance::RGBController_CorsairVengeance(CorsairVengeanceC RGBController_CorsairVengeance::~RGBController_CorsairVengeance() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairVengeanceProController/RGBController_CorsairVengeancePro.cpp b/Controllers/CorsairVengeanceProController/RGBController_CorsairVengeancePro.cpp index 6eb33094e..54980e48c 100644 --- a/Controllers/CorsairVengeanceProController/RGBController_CorsairVengeancePro.cpp +++ b/Controllers/CorsairVengeanceProController/RGBController_CorsairVengeancePro.cpp @@ -175,6 +175,8 @@ RGBController_CorsairVengeancePro::RGBController_CorsairVengeancePro(CorsairVeng RGBController_CorsairVengeancePro::~RGBController_CorsairVengeancePro() { + Shutdown(); + delete controller; } diff --git a/Controllers/CorsairWirelessController/RGBController_CorsairWireless.cpp b/Controllers/CorsairWirelessController/RGBController_CorsairWireless.cpp index 588984872..cfdf0b41f 100644 --- a/Controllers/CorsairWirelessController/RGBController_CorsairWireless.cpp +++ b/Controllers/CorsairWirelessController/RGBController_CorsairWireless.cpp @@ -226,6 +226,8 @@ RGBController_CorsairWireless::RGBController_CorsairWireless(CorsairWirelessCont RGBController_CorsairWireless::~RGBController_CorsairWireless() { + Shutdown(); + /*-----------------------------------------------------*\ | Close keepalive thread | \*-----------------------------------------------------*/ diff --git a/Controllers/CougarController/CougarKeyboardController/RGBController_CougarKeyboard.cpp b/Controllers/CougarController/CougarKeyboardController/RGBController_CougarKeyboard.cpp index c4b262a61..fb707c78f 100644 --- a/Controllers/CougarController/CougarKeyboardController/RGBController_CougarKeyboard.cpp +++ b/Controllers/CougarController/CougarKeyboardController/RGBController_CougarKeyboard.cpp @@ -375,6 +375,8 @@ RGBController_CougarKeyboard::RGBController_CougarKeyboard(CougarKeyboardControl RGBController_CougarKeyboard::~RGBController_CougarKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/CougarController/CougarRevengerSTController/RGBController_CougarRevengerST.cpp b/Controllers/CougarController/CougarRevengerSTController/RGBController_CougarRevengerST.cpp index b7f4181a5..326ccf42d 100644 --- a/Controllers/CougarController/CougarRevengerSTController/RGBController_CougarRevengerST.cpp +++ b/Controllers/CougarController/CougarRevengerSTController/RGBController_CougarRevengerST.cpp @@ -107,6 +107,8 @@ RGBController_CougarRevengerST::RGBController_CougarRevengerST(CougarRevengerSTC RGBController_CougarRevengerST::~RGBController_CougarRevengerST() { + Shutdown(); + delete controller; } diff --git a/Controllers/CreativeController/RGBController_CreativeSoundBlasterAE5_Windows.cpp b/Controllers/CreativeController/RGBController_CreativeSoundBlasterAE5_Windows.cpp index 607ced0f4..580d99618 100644 --- a/Controllers/CreativeController/RGBController_CreativeSoundBlasterAE5_Windows.cpp +++ b/Controllers/CreativeController/RGBController_CreativeSoundBlasterAE5_Windows.cpp @@ -43,6 +43,8 @@ RGBController_CreativeSoundBlasterAE5::RGBController_CreativeSoundBlasterAE5(Cre RGBController_CreativeSoundBlasterAE5::~RGBController_CreativeSoundBlasterAE5() { + Shutdown(); + delete controller; } diff --git a/Controllers/CreativeController/RGBController_CreativeSoundBlasterXG6.cpp b/Controllers/CreativeController/RGBController_CreativeSoundBlasterXG6.cpp index bf5a5539d..11010e518 100644 --- a/Controllers/CreativeController/RGBController_CreativeSoundBlasterXG6.cpp +++ b/Controllers/CreativeController/RGBController_CreativeSoundBlasterXG6.cpp @@ -46,6 +46,8 @@ RGBController_CreativeSoundBlasterXG6::RGBController_CreativeSoundBlasterXG6(Cre RGBController_CreativeSoundBlasterXG6::~RGBController_CreativeSoundBlasterXG6() { + Shutdown(); + delete controller; } diff --git a/Controllers/CrucialController/RGBController_Crucial.cpp b/Controllers/CrucialController/RGBController_Crucial.cpp index 9d46be61b..ddfbd4e26 100644 --- a/Controllers/CrucialController/RGBController_Crucial.cpp +++ b/Controllers/CrucialController/RGBController_Crucial.cpp @@ -129,6 +129,8 @@ RGBController_Crucial::RGBController_Crucial(CrucialController* controller_ptr) RGBController_Crucial::~RGBController_Crucial() { + Shutdown(); + delete controller; } diff --git a/Controllers/CryorigH7QuadLumiController/RGBController_CryorigH7QuadLumi.cpp b/Controllers/CryorigH7QuadLumiController/RGBController_CryorigH7QuadLumi.cpp index 7b7a50948..c7f38ad3b 100644 --- a/Controllers/CryorigH7QuadLumiController/RGBController_CryorigH7QuadLumi.cpp +++ b/Controllers/CryorigH7QuadLumiController/RGBController_CryorigH7QuadLumi.cpp @@ -40,6 +40,8 @@ RGBController_CryorigH7QuadLumi::RGBController_CryorigH7QuadLumi(CryorigH7QuadLu RGBController_CryorigH7QuadLumi::~RGBController_CryorigH7QuadLumi() { + Shutdown(); + delete controller; } diff --git a/Controllers/DDPController/RGBController_DDP.cpp b/Controllers/DDPController/RGBController_DDP.cpp index fefc256cc..356dcab0f 100644 --- a/Controllers/DDPController/RGBController_DDP.cpp +++ b/Controllers/DDPController/RGBController_DDP.cpp @@ -52,6 +52,8 @@ RGBController_DDP::RGBController_DDP(std::vector device_list) RGBController_DDP::~RGBController_DDP() { + Shutdown(); + delete controller; } diff --git a/Controllers/DMXController/RGBController_DMX.cpp b/Controllers/DMXController/RGBController_DMX.cpp index 9db7b520d..699a69861 100644 --- a/Controllers/DMXController/RGBController_DMX.cpp +++ b/Controllers/DMXController/RGBController_DMX.cpp @@ -101,6 +101,8 @@ RGBController_DMX::RGBController_DMX(std::vector device_list) RGBController_DMX::~RGBController_DMX() { + Shutdown(); + if(keepalive_thread != nullptr) { keepalive_thread_run = 0; diff --git a/Controllers/DRGBController/RGBController_DRGB.cpp b/Controllers/DRGBController/RGBController_DRGB.cpp index 8e48bb196..1b8691fd1 100644 --- a/Controllers/DRGBController/RGBController_DRGB.cpp +++ b/Controllers/DRGBController/RGBController_DRGB.cpp @@ -48,6 +48,8 @@ RGBController_DRGB::RGBController_DRGB(DRGBController* controller_ptr) RGBController_DRGB::~RGBController_DRGB() { + Shutdown(); + delete controller; } diff --git a/Controllers/DarkProject/RGBController_DarkProjectKeyboard.cpp b/Controllers/DarkProject/RGBController_DarkProjectKeyboard.cpp index a9e9675ce..f5be14774 100644 --- a/Controllers/DarkProject/RGBController_DarkProjectKeyboard.cpp +++ b/Controllers/DarkProject/RGBController_DarkProjectKeyboard.cpp @@ -153,6 +153,8 @@ RGBController_DarkProjectKeyboard::RGBController_DarkProjectKeyboard(DarkProject RGBController_DarkProjectKeyboard::~RGBController_DarkProjectKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/DasKeyboardController/RGBController_DasKeyboard.cpp b/Controllers/DasKeyboardController/RGBController_DasKeyboard.cpp index 8cadb39df..74897c216 100644 --- a/Controllers/DasKeyboardController/RGBController_DasKeyboard.cpp +++ b/Controllers/DasKeyboardController/RGBController_DasKeyboard.cpp @@ -248,6 +248,8 @@ RGBController_DasKeyboard::RGBController_DasKeyboard(DasKeyboardController* cont RGBController_DasKeyboard::~RGBController_DasKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/DebugController/RGBController_Debug.cpp b/Controllers/DebugController/RGBController_Debug.cpp index c3584c072..4009e8e48 100644 --- a/Controllers/DebugController/RGBController_Debug.cpp +++ b/Controllers/DebugController/RGBController_Debug.cpp @@ -548,7 +548,7 @@ RGBController_Debug::RGBController_Debug(bool custom_controller, json debug_sett RGBController_Debug::~RGBController_Debug() { - + Shutdown(); } void RGBController_Debug::DeviceResizeZone(int index, int new_size) diff --git a/Controllers/DreamCheekyController/RGBController_DreamCheeky.cpp b/Controllers/DreamCheekyController/RGBController_DreamCheeky.cpp index 63dd861e5..eecdaf537 100644 --- a/Controllers/DreamCheekyController/RGBController_DreamCheeky.cpp +++ b/Controllers/DreamCheekyController/RGBController_DreamCheeky.cpp @@ -34,7 +34,9 @@ RGBController_DreamCheeky::RGBController_DreamCheeky(DreamCheekyController* cont RGBController_DreamCheeky::~RGBController_DreamCheeky() { + Shutdown(); + delete controller; } void RGBController_DreamCheeky::SetupZones() diff --git a/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp b/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp index 345530191..0971bad92 100644 --- a/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp +++ b/Controllers/DuckyKeyboardController/RGBController_DuckyKeyboard.cpp @@ -222,6 +222,8 @@ RGBController_DuckyKeyboard::RGBController_DuckyKeyboard(DuckyKeyboardController RGBController_DuckyKeyboard::~RGBController_DuckyKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/DygmaRaiseController/RGBController_DygmaRaise.cpp b/Controllers/DygmaRaiseController/RGBController_DygmaRaise.cpp index 6d951ac87..c859c80af 100644 --- a/Controllers/DygmaRaiseController/RGBController_DygmaRaise.cpp +++ b/Controllers/DygmaRaiseController/RGBController_DygmaRaise.cpp @@ -164,6 +164,8 @@ RGBController_DygmaRaise::RGBController_DygmaRaise(DygmaRaiseController* control RGBController_DygmaRaise::~RGBController_DygmaRaise() { + Shutdown(); + delete controller; } diff --git a/Controllers/E131Controller/RGBController_E131.cpp b/Controllers/E131Controller/RGBController_E131.cpp index 0f8471f5d..9e7ba6eaf 100644 --- a/Controllers/E131Controller/RGBController_E131.cpp +++ b/Controllers/E131Controller/RGBController_E131.cpp @@ -310,6 +310,8 @@ RGBController_E131::RGBController_E131(std::vector device_list) RGBController_E131::~RGBController_E131() { + Shutdown(); + if(keepalive_thread != nullptr) { keepalive_thread_run = 0; diff --git a/Controllers/EKController/RGBController_EKController.cpp b/Controllers/EKController/RGBController_EKController.cpp index a5c7e0fa8..becf4fce7 100644 --- a/Controllers/EKController/RGBController_EKController.cpp +++ b/Controllers/EKController/RGBController_EKController.cpp @@ -125,6 +125,8 @@ RGBController_EKController::RGBController_EKController(EKController* controller_ RGBController_EKController::~RGBController_EKController() { + Shutdown(); + delete controller; } diff --git a/Controllers/ENESMBusController/RGBController_ENESMBus.cpp b/Controllers/ENESMBusController/RGBController_ENESMBus.cpp index 4a0415f60..65fe1b56d 100644 --- a/Controllers/ENESMBusController/RGBController_ENESMBus.cpp +++ b/Controllers/ENESMBusController/RGBController_ENESMBus.cpp @@ -191,6 +191,8 @@ RGBController_ENESMBus::RGBController_ENESMBus(ENESMBusController * controller_p RGBController_ENESMBus::~RGBController_ENESMBus() { + Shutdown(); + delete controller; } diff --git a/Controllers/EVGAAmpereGPUController/RGBController_EVGAGPUv3.cpp b/Controllers/EVGAAmpereGPUController/RGBController_EVGAGPUv3.cpp index 22c88a58a..dc68392bf 100644 --- a/Controllers/EVGAAmpereGPUController/RGBController_EVGAGPUv3.cpp +++ b/Controllers/EVGAAmpereGPUController/RGBController_EVGAGPUv3.cpp @@ -205,6 +205,8 @@ RGBController_EVGAGPUv3::RGBController_EVGAGPUv3(EVGAGPUv3Controller* controller RGBController_EVGAGPUv3::~RGBController_EVGAGPUv3() { + Shutdown(); + delete controller; } diff --git a/Controllers/EVGAGP102GPUController/RGBController_EVGAGP102.cpp b/Controllers/EVGAGP102GPUController/RGBController_EVGAGP102.cpp index c3496eafb..e06b451ee 100644 --- a/Controllers/EVGAGP102GPUController/RGBController_EVGAGP102.cpp +++ b/Controllers/EVGAGP102GPUController/RGBController_EVGAGP102.cpp @@ -77,6 +77,8 @@ RGBController_EVGAGP102::RGBController_EVGAGP102(std::vectorjoin(); delete keepalive_thread; diff --git a/Controllers/GaiZongGaiKeyboardController/RGBController_GaiZhongGai.cpp b/Controllers/GaiZongGaiKeyboardController/RGBController_GaiZhongGai.cpp index 1314d734f..089efe7e0 100644 --- a/Controllers/GaiZongGaiKeyboardController/RGBController_GaiZhongGai.cpp +++ b/Controllers/GaiZongGaiKeyboardController/RGBController_GaiZhongGai.cpp @@ -451,6 +451,8 @@ RGBController_GaiZhongGaiKeyboard::RGBController_GaiZhongGaiKeyboard(GaiZhongGai RGBController_GaiZhongGaiKeyboard::~RGBController_GaiZhongGaiKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/GainwardGPUController/GainwardGPUv1Controller/RGBController_GainwardGPUv1.cpp b/Controllers/GainwardGPUController/GainwardGPUv1Controller/RGBController_GainwardGPUv1.cpp index 738acd42e..f884eede2 100644 --- a/Controllers/GainwardGPUController/GainwardGPUv1Controller/RGBController_GainwardGPUv1.cpp +++ b/Controllers/GainwardGPUController/GainwardGPUv1Controller/RGBController_GainwardGPUv1.cpp @@ -50,6 +50,8 @@ RGBController_GainwardGPUv1::RGBController_GainwardGPUv1(GainwardGPUv1Controller RGBController_GainwardGPUv1::~RGBController_GainwardGPUv1() { + Shutdown(); + delete controller; } diff --git a/Controllers/GainwardGPUController/GainwardGPUv2Controller/RGBController_GainwardGPUv2.cpp b/Controllers/GainwardGPUController/GainwardGPUv2Controller/RGBController_GainwardGPUv2.cpp index de6c94e24..4abe648b8 100644 --- a/Controllers/GainwardGPUController/GainwardGPUv2Controller/RGBController_GainwardGPUv2.cpp +++ b/Controllers/GainwardGPUController/GainwardGPUv2Controller/RGBController_GainwardGPUv2.cpp @@ -82,6 +82,8 @@ RGBController_GainwardGPUv2::RGBController_GainwardGPUv2(GainwardGPUv2Controller RGBController_GainwardGPUv2::~RGBController_GainwardGPUv2() { + Shutdown(); + delete controller; } diff --git a/Controllers/GalaxGPUController/GalaxGPUv1Controller/RGBController_GalaxGPUv1.cpp b/Controllers/GalaxGPUController/GalaxGPUv1Controller/RGBController_GalaxGPUv1.cpp index 2019b92cc..52a8bacf3 100644 --- a/Controllers/GalaxGPUController/GalaxGPUv1Controller/RGBController_GalaxGPUv1.cpp +++ b/Controllers/GalaxGPUController/GalaxGPUv1Controller/RGBController_GalaxGPUv1.cpp @@ -99,6 +99,8 @@ RGBController_GalaxGPUv1::RGBController_GalaxGPUv1(GalaxGPUv1Controller* control RGBController_GalaxGPUv1::~RGBController_GalaxGPUv1() { + Shutdown(); + delete controller; } diff --git a/Controllers/GalaxGPUController/GalaxGPUv2Controller/RGBController_GalaxGPUv2.cpp b/Controllers/GalaxGPUController/GalaxGPUv2Controller/RGBController_GalaxGPUv2.cpp index f347502f9..145fe17ee 100644 --- a/Controllers/GalaxGPUController/GalaxGPUv2Controller/RGBController_GalaxGPUv2.cpp +++ b/Controllers/GalaxGPUController/GalaxGPUv2Controller/RGBController_GalaxGPUv2.cpp @@ -119,6 +119,8 @@ RGBController_GalaxGPUv2::RGBController_GalaxGPUv2(GalaxGPUv2Controller* control RGBController_GalaxGPUv2::~RGBController_GalaxGPUv2() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteAorusCPUCoolerController/RGBController_AorusATC800.cpp b/Controllers/GigabyteAorusCPUCoolerController/RGBController_AorusATC800.cpp index 1d3f75294..07d8984a5 100644 --- a/Controllers/GigabyteAorusCPUCoolerController/RGBController_AorusATC800.cpp +++ b/Controllers/GigabyteAorusCPUCoolerController/RGBController_AorusATC800.cpp @@ -194,6 +194,8 @@ RGBController_AorusATC800::RGBController_AorusATC800(ATC800Controller* controlle RGBController_AorusATC800::~RGBController_AorusATC800() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp b/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp index 7110ef33a..303b7291e 100644 --- a/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp +++ b/Controllers/GigabyteAorusLaptopController/RGBController_GigabyteAorusLaptop.cpp @@ -354,6 +354,8 @@ RGBController_GigabyteAorusLaptop::RGBController_GigabyteAorusLaptop(GigabyteAor RGBController_GigabyteAorusLaptop::~RGBController_GigabyteAorusLaptop() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteAorusMouseController/RGBController_GigabyteAorusMouse.cpp b/Controllers/GigabyteAorusMouseController/RGBController_GigabyteAorusMouse.cpp index cf2f10151..1060074b2 100644 --- a/Controllers/GigabyteAorusMouseController/RGBController_GigabyteAorusMouse.cpp +++ b/Controllers/GigabyteAorusMouseController/RGBController_GigabyteAorusMouse.cpp @@ -121,6 +121,8 @@ RGBController_GigabyteAorusMouse::RGBController_GigabyteAorusMouse(GigabyteAorus RGBController_GigabyteAorusMouse::~RGBController_GigabyteAorusMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteAorusPCCaseController/RGBController_GigabyteAorusPCCase.cpp b/Controllers/GigabyteAorusPCCaseController/RGBController_GigabyteAorusPCCase.cpp index 5225116bc..ff2e4930a 100644 --- a/Controllers/GigabyteAorusPCCaseController/RGBController_GigabyteAorusPCCase.cpp +++ b/Controllers/GigabyteAorusPCCaseController/RGBController_GigabyteAorusPCCase.cpp @@ -113,6 +113,8 @@ RGBController_GigabyteAorusPCCase::RGBController_GigabyteAorusPCCase(GigabyteAor RGBController_GigabyteAorusPCCase::~RGBController_GigabyteAorusPCCase() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusion2AorusMasterGPUController/RGBController_GigabyteRGBFusion2AorusMasterGPU.cpp b/Controllers/GigabyteRGBFusion2AorusMasterGPUController/RGBController_GigabyteRGBFusion2AorusMasterGPU.cpp index d4e0f94ba..89fbe2390 100644 --- a/Controllers/GigabyteRGBFusion2AorusMasterGPUController/RGBController_GigabyteRGBFusion2AorusMasterGPU.cpp +++ b/Controllers/GigabyteRGBFusion2AorusMasterGPUController/RGBController_GigabyteRGBFusion2AorusMasterGPU.cpp @@ -54,6 +54,8 @@ RGBController_RGBFusion2AorusMasterGPU::RGBController_RGBFusion2AorusMasterGPU(R RGBController_RGBFusion2AorusMasterGPU::~RGBController_RGBFusion2AorusMasterGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusion2BlackwellGPUController/RGBController_GigabyteRGBFusion2BlackwellGPU.cpp b/Controllers/GigabyteRGBFusion2BlackwellGPUController/RGBController_GigabyteRGBFusion2BlackwellGPU.cpp index cb7070974..ab3e8b420 100644 --- a/Controllers/GigabyteRGBFusion2BlackwellGPUController/RGBController_GigabyteRGBFusion2BlackwellGPU.cpp +++ b/Controllers/GigabyteRGBFusion2BlackwellGPUController/RGBController_GigabyteRGBFusion2BlackwellGPU.cpp @@ -174,6 +174,8 @@ RGBController_RGBFusion2BlackwellGPU::RGBController_RGBFusion2BlackwellGPU(RGBFu RGBController_RGBFusion2BlackwellGPU::~RGBController_RGBFusion2BlackwellGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusion2DRAMController/RGBController_GigabyteRGBFusion2DRAM.cpp b/Controllers/GigabyteRGBFusion2DRAMController/RGBController_GigabyteRGBFusion2DRAM.cpp index b14725f30..22c12175f 100644 --- a/Controllers/GigabyteRGBFusion2DRAMController/RGBController_GigabyteRGBFusion2DRAM.cpp +++ b/Controllers/GigabyteRGBFusion2DRAMController/RGBController_GigabyteRGBFusion2DRAM.cpp @@ -77,6 +77,8 @@ RGBController_RGBFusion2DRAM::RGBController_RGBFusion2DRAM(RGBFusion2DRAMControl RGBController_RGBFusion2DRAM::~RGBController_RGBFusion2DRAM() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp b/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp index 7b7e2e408..d6aceb568 100644 --- a/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp +++ b/Controllers/GigabyteRGBFusion2GPUController/RGBController_GigabyteRGBFusion2GPU.cpp @@ -156,6 +156,8 @@ RGBController_RGBFusion2GPU::RGBController_RGBFusion2GPU(RGBFusion2GPUController RGBController_RGBFusion2GPU::~RGBController_RGBFusion2GPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusion2SMBusController/RGBController_GigabyteRGBFusion2SMBus.cpp b/Controllers/GigabyteRGBFusion2SMBusController/RGBController_GigabyteRGBFusion2SMBus.cpp index 5e2d5eb08..22ca53c2d 100644 --- a/Controllers/GigabyteRGBFusion2SMBusController/RGBController_GigabyteRGBFusion2SMBus.cpp +++ b/Controllers/GigabyteRGBFusion2SMBusController/RGBController_GigabyteRGBFusion2SMBus.cpp @@ -203,6 +203,8 @@ RGBController_RGBFusion2SMBus::RGBController_RGBFusion2SMBus(RGBFusion2SMBusCont RGBController_RGBFusion2SMBus::~RGBController_RGBFusion2SMBus() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusion2USBController/RGBController_GigabyteRGBFusion2USB.cpp b/Controllers/GigabyteRGBFusion2USBController/RGBController_GigabyteRGBFusion2USB.cpp index 3ea50b27f..da3c04717 100644 --- a/Controllers/GigabyteRGBFusion2USBController/RGBController_GigabyteRGBFusion2USB.cpp +++ b/Controllers/GigabyteRGBFusion2USBController/RGBController_GigabyteRGBFusion2USB.cpp @@ -206,6 +206,8 @@ RGBController_RGBFusion2USB::RGBController_RGBFusion2USB(RGBFusion2USBController RGBController_RGBFusion2USB::~RGBController_RGBFusion2USB() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusionController/RGBController_GigabyteRGBFusion.cpp b/Controllers/GigabyteRGBFusionController/RGBController_GigabyteRGBFusion.cpp index 0432fd158..d160ecf41 100644 --- a/Controllers/GigabyteRGBFusionController/RGBController_GigabyteRGBFusion.cpp +++ b/Controllers/GigabyteRGBFusionController/RGBController_GigabyteRGBFusion.cpp @@ -74,6 +74,8 @@ RGBController_RGBFusion::RGBController_RGBFusion(RGBFusionController* controller RGBController_RGBFusion::~RGBController_RGBFusion() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteRGBFusionGPUController/RGBController_GigabyteRGBFusionGPU.cpp b/Controllers/GigabyteRGBFusionGPUController/RGBController_GigabyteRGBFusionGPU.cpp index 5dae16def..f034f4cce 100644 --- a/Controllers/GigabyteRGBFusionGPUController/RGBController_GigabyteRGBFusionGPU.cpp +++ b/Controllers/GigabyteRGBFusionGPUController/RGBController_GigabyteRGBFusionGPU.cpp @@ -112,6 +112,8 @@ RGBController_RGBFusionGPU::RGBController_RGBFusionGPU(RGBFusionGPUController* c RGBController_RGBFusionGPU::~RGBController_RGBFusionGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/GigabyteSuperIORGBController/RGBController_GigabyteSuperIORGB.cpp b/Controllers/GigabyteSuperIORGBController/RGBController_GigabyteSuperIORGB.cpp index 736b5fbd1..56c20b606 100644 --- a/Controllers/GigabyteSuperIORGBController/RGBController_GigabyteSuperIORGB.cpp +++ b/Controllers/GigabyteSuperIORGBController/RGBController_GigabyteSuperIORGB.cpp @@ -135,6 +135,8 @@ RGBController_GigabyteSuperIORGB::RGBController_GigabyteSuperIORGB(GigabyteSuper RGBController_GigabyteSuperIORGB::~RGBController_GigabyteSuperIORGB() { + Shutdown(); + delete controller; } diff --git a/Controllers/GoveeController/RGBController_Govee.cpp b/Controllers/GoveeController/RGBController_Govee.cpp index 4c8e285b7..673a5ad23 100644 --- a/Controllers/GoveeController/RGBController_Govee.cpp +++ b/Controllers/GoveeController/RGBController_Govee.cpp @@ -58,6 +58,8 @@ RGBController_Govee::RGBController_Govee(GoveeController* controller_ptr) RGBController_Govee::~RGBController_Govee() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HPOmen30LController/RGBController_HPOmen30L.cpp b/Controllers/HPOmen30LController/RGBController_HPOmen30L.cpp index 2a3fc2081..6d650dbb8 100644 --- a/Controllers/HPOmen30LController/RGBController_HPOmen30L.cpp +++ b/Controllers/HPOmen30LController/RGBController_HPOmen30L.cpp @@ -142,6 +142,8 @@ RGBController_HPOmen30L::RGBController_HPOmen30L(HPOmen30LController* controller RGBController_HPOmen30L::~RGBController_HPOmen30L() { + Shutdown(); + delete controller; } diff --git a/Controllers/HPOmenLaptopController/RGBController_HPOmenLaptopWMI_Windows.cpp b/Controllers/HPOmenLaptopController/RGBController_HPOmenLaptopWMI_Windows.cpp index a9bc27c73..d7c729314 100644 --- a/Controllers/HPOmenLaptopController/RGBController_HPOmenLaptopWMI_Windows.cpp +++ b/Controllers/HPOmenLaptopController/RGBController_HPOmenLaptopWMI_Windows.cpp @@ -52,6 +52,8 @@ RGBController_HPOmenLaptopWMI_Windows::RGBController_HPOmenLaptopWMI_Windows(HPO RGBController_HPOmenLaptopWMI_Windows::~RGBController_HPOmenLaptopWMI_Windows() { + Shutdown(); + delete this->controller; } diff --git a/Controllers/HYTEKeyboardController/RGBController_HYTEKeyboard.cpp b/Controllers/HYTEKeyboardController/RGBController_HYTEKeyboard.cpp index dda48cb5e..e217d1a07 100644 --- a/Controllers/HYTEKeyboardController/RGBController_HYTEKeyboard.cpp +++ b/Controllers/HYTEKeyboardController/RGBController_HYTEKeyboard.cpp @@ -79,6 +79,8 @@ RGBController_HYTEKeyboard::RGBController_HYTEKeyboard(HYTEKeyboardController* c RGBController_HYTEKeyboard::~RGBController_HYTEKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp b/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp index 63ff92885..8aaa7c1e3 100644 --- a/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp +++ b/Controllers/HYTEMousematController/RGBController_HYTEMousemat.cpp @@ -53,6 +53,8 @@ RGBController_HYTEMousemat::RGBController_HYTEMousemat(HYTEMousematController* c RGBController_HYTEMousemat::~RGBController_HYTEMousemat() { + Shutdown(); + delete controller; } diff --git a/Controllers/HYTENexusController/RGBController_HYTENexus.cpp b/Controllers/HYTENexusController/RGBController_HYTENexus.cpp index ca0943ba6..dab2a7ffe 100644 --- a/Controllers/HYTENexusController/RGBController_HYTENexus.cpp +++ b/Controllers/HYTENexusController/RGBController_HYTENexus.cpp @@ -52,6 +52,8 @@ RGBController_HYTENexus::RGBController_HYTENexus(HYTENexusController* controller RGBController_HYTENexus::~RGBController_HYTENexus() { + Shutdown(); + delete controller; } diff --git a/Controllers/HoltekController/HoltekA070Controller/RGBController_HoltekA070.cpp b/Controllers/HoltekController/HoltekA070Controller/RGBController_HoltekA070.cpp index ed222ebf5..15a48e8cb 100644 --- a/Controllers/HoltekController/HoltekA070Controller/RGBController_HoltekA070.cpp +++ b/Controllers/HoltekController/HoltekA070Controller/RGBController_HoltekA070.cpp @@ -54,6 +54,8 @@ RGBController_HoltekA070::RGBController_HoltekA070(HoltekA070Controller* control RGBController_HoltekA070::~RGBController_HoltekA070() { + Shutdown(); + delete controller; } diff --git a/Controllers/HoltekController/HoltekA1FAController/RGBController_HoltekA1FA.cpp b/Controllers/HoltekController/HoltekA1FAController/RGBController_HoltekA1FA.cpp index 7d309a856..1443f1fee 100644 --- a/Controllers/HoltekController/HoltekA1FAController/RGBController_HoltekA1FA.cpp +++ b/Controllers/HoltekController/HoltekA1FAController/RGBController_HoltekA1FA.cpp @@ -82,6 +82,8 @@ RGBController_HoltekA1FA::RGBController_HoltekA1FA(HoltekA1FAController* control RGBController_HoltekA1FA::~RGBController_HoltekA1FA() { + Shutdown(); + delete controller; } diff --git a/Controllers/HyperXDRAMController/RGBController_HyperXDRAM.cpp b/Controllers/HyperXDRAMController/RGBController_HyperXDRAM.cpp index 33c6040d8..293b63603 100644 --- a/Controllers/HyperXDRAMController/RGBController_HyperXDRAM.cpp +++ b/Controllers/HyperXDRAMController/RGBController_HyperXDRAM.cpp @@ -139,6 +139,8 @@ RGBController_HyperXDRAM::RGBController_HyperXDRAM(HyperXDRAMController* control RGBController_HyperXDRAM::~RGBController_HyperXDRAM() { + Shutdown(); + delete controller; } diff --git a/Controllers/HyperXKeyboardController/HyperXAlloyElite2Controller/RGBController_HyperXAlloyElite2.cpp b/Controllers/HyperXKeyboardController/HyperXAlloyElite2Controller/RGBController_HyperXAlloyElite2.cpp index 6aec74670..da3d53ac8 100644 --- a/Controllers/HyperXKeyboardController/HyperXAlloyElite2Controller/RGBController_HyperXAlloyElite2.cpp +++ b/Controllers/HyperXKeyboardController/HyperXAlloyElite2Controller/RGBController_HyperXAlloyElite2.cpp @@ -238,6 +238,8 @@ RGBController_HyperXAlloyElite2::RGBController_HyperXAlloyElite2(HyperXAlloyElit RGBController_HyperXAlloyElite2::~RGBController_HyperXAlloyElite2() { + Shutdown(); + keepalive_thread_run = false; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXKeyboardController/HyperXAlloyEliteController/RGBController_HyperXAlloyElite.cpp b/Controllers/HyperXKeyboardController/HyperXAlloyEliteController/RGBController_HyperXAlloyElite.cpp index 1709b00ae..35e1e7e87 100644 --- a/Controllers/HyperXKeyboardController/HyperXAlloyEliteController/RGBController_HyperXAlloyElite.cpp +++ b/Controllers/HyperXKeyboardController/HyperXAlloyEliteController/RGBController_HyperXAlloyElite.cpp @@ -251,6 +251,8 @@ RGBController_HyperXAlloyElite::RGBController_HyperXAlloyElite(HyperXAlloyEliteC RGBController_HyperXAlloyElite::~RGBController_HyperXAlloyElite() { + Shutdown(); + keepalive_thread_run = false; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXKeyboardController/HyperXAlloyFPSController/RGBController_HyperXAlloyFPS.cpp b/Controllers/HyperXKeyboardController/HyperXAlloyFPSController/RGBController_HyperXAlloyFPS.cpp index 06f7efe04..070bf80ad 100644 --- a/Controllers/HyperXKeyboardController/HyperXAlloyFPSController/RGBController_HyperXAlloyFPS.cpp +++ b/Controllers/HyperXKeyboardController/HyperXAlloyFPSController/RGBController_HyperXAlloyFPS.cpp @@ -192,6 +192,8 @@ RGBController_HyperXAlloyFPS::RGBController_HyperXAlloyFPS(HyperXAlloyFPSControl RGBController_HyperXAlloyFPS::~RGBController_HyperXAlloyFPS() { + Shutdown(); + keepalive_thread_run = false; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXKeyboardController/HyperXAlloyOrigins60and65Controller/RGBController_HyperXAlloyOrigins60and65.cpp b/Controllers/HyperXKeyboardController/HyperXAlloyOrigins60and65Controller/RGBController_HyperXAlloyOrigins60and65.cpp index 01298f2fa..182bbb134 100644 --- a/Controllers/HyperXKeyboardController/HyperXAlloyOrigins60and65Controller/RGBController_HyperXAlloyOrigins60and65.cpp +++ b/Controllers/HyperXKeyboardController/HyperXAlloyOrigins60and65Controller/RGBController_HyperXAlloyOrigins60and65.cpp @@ -245,6 +245,8 @@ RGBController_HyperXAlloyOrigins60and65::RGBController_HyperXAlloyOrigins60and65 RGBController_HyperXAlloyOrigins60and65::~RGBController_HyperXAlloyOrigins60and65() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXKeyboardController/HyperXAlloyOriginsController/RGBController_HyperXAlloyOrigins.cpp b/Controllers/HyperXKeyboardController/HyperXAlloyOriginsController/RGBController_HyperXAlloyOrigins.cpp index 7220e0009..07cb86ed7 100644 --- a/Controllers/HyperXKeyboardController/HyperXAlloyOriginsController/RGBController_HyperXAlloyOrigins.cpp +++ b/Controllers/HyperXKeyboardController/HyperXAlloyOriginsController/RGBController_HyperXAlloyOrigins.cpp @@ -213,6 +213,8 @@ RGBController_HyperXAlloyOrigins::RGBController_HyperXAlloyOrigins(HyperXAlloyOr RGBController_HyperXAlloyOrigins::~RGBController_HyperXAlloyOrigins() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXKeyboardController/HyperXAlloyOriginsCoreController/RGBController_HyperXAlloyOriginsCore.cpp b/Controllers/HyperXKeyboardController/HyperXAlloyOriginsCoreController/RGBController_HyperXAlloyOriginsCore.cpp index 95b639e0a..4137c6dbf 100644 --- a/Controllers/HyperXKeyboardController/HyperXAlloyOriginsCoreController/RGBController_HyperXAlloyOriginsCore.cpp +++ b/Controllers/HyperXKeyboardController/HyperXAlloyOriginsCoreController/RGBController_HyperXAlloyOriginsCore.cpp @@ -128,6 +128,8 @@ RGBController_HyperXAlloyOriginsCore::RGBController_HyperXAlloyOriginsCore(Hyper RGBController_HyperXAlloyOriginsCore::~RGBController_HyperXAlloyOriginsCore() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXMicrophoneController/RGBController_HyperXMicrophone.cpp b/Controllers/HyperXMicrophoneController/RGBController_HyperXMicrophone.cpp index f2354e1f6..5869a9183 100644 --- a/Controllers/HyperXMicrophoneController/RGBController_HyperXMicrophone.cpp +++ b/Controllers/HyperXMicrophoneController/RGBController_HyperXMicrophone.cpp @@ -78,6 +78,8 @@ RGBController_HyperXMicrophone::RGBController_HyperXMicrophone(HyperXMicrophoneC RGBController_HyperXMicrophone::~RGBController_HyperXMicrophone() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXMicrophoneV2Controller/RGBController_HyperXMicrophoneV2.cpp b/Controllers/HyperXMicrophoneV2Controller/RGBController_HyperXMicrophoneV2.cpp index c29b0f618..b17e28e70 100644 --- a/Controllers/HyperXMicrophoneV2Controller/RGBController_HyperXMicrophoneV2.cpp +++ b/Controllers/HyperXMicrophoneV2Controller/RGBController_HyperXMicrophoneV2.cpp @@ -53,6 +53,8 @@ RGBController_HyperXMicrophoneV2::RGBController_HyperXMicrophoneV2(HyperXMicroph RGBController_HyperXMicrophoneV2::~RGBController_HyperXMicrophoneV2() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXMouseController/HyperXPulsefireDartController/RGBController_HyperXPulsefireDart.cpp b/Controllers/HyperXMouseController/HyperXPulsefireDartController/RGBController_HyperXPulsefireDart.cpp index ca6ca966a..6ca0dcad6 100644 --- a/Controllers/HyperXMouseController/HyperXPulsefireDartController/RGBController_HyperXPulsefireDart.cpp +++ b/Controllers/HyperXMouseController/HyperXPulsefireDartController/RGBController_HyperXPulsefireDart.cpp @@ -88,7 +88,9 @@ RGBController_HyperXPulsefireDart::RGBController_HyperXPulsefireDart(HyperXPulse RGBController_HyperXPulsefireDart::~RGBController_HyperXPulsefireDart() { + Shutdown(); + delete controller; } void RGBController_HyperXPulsefireDart::SetupZones() diff --git a/Controllers/HyperXMouseController/HyperXPulsefireFPSProController/RGBController_HyperXPulsefireFPSPro.cpp b/Controllers/HyperXMouseController/HyperXPulsefireFPSProController/RGBController_HyperXPulsefireFPSPro.cpp index 75c521429..0fa9adadd 100644 --- a/Controllers/HyperXMouseController/HyperXPulsefireFPSProController/RGBController_HyperXPulsefireFPSPro.cpp +++ b/Controllers/HyperXMouseController/HyperXPulsefireFPSProController/RGBController_HyperXPulsefireFPSPro.cpp @@ -56,6 +56,8 @@ RGBController_HyperXPulsefireFPSPro::RGBController_HyperXPulsefireFPSPro(HyperXP RGBController_HyperXPulsefireFPSPro::~RGBController_HyperXPulsefireFPSPro() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXMouseController/HyperXPulsefireHasteController/RGBController_HyperXPulsefireHaste.cpp b/Controllers/HyperXMouseController/HyperXPulsefireHasteController/RGBController_HyperXPulsefireHaste.cpp index 440f6403d..f627369e3 100644 --- a/Controllers/HyperXMouseController/HyperXPulsefireHasteController/RGBController_HyperXPulsefireHaste.cpp +++ b/Controllers/HyperXMouseController/HyperXPulsefireHasteController/RGBController_HyperXPulsefireHaste.cpp @@ -56,6 +56,8 @@ RGBController_HyperXPulsefireHaste::RGBController_HyperXPulsefireHaste(HyperXPul RGBController_HyperXPulsefireHaste::~RGBController_HyperXPulsefireHaste() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXMouseController/HyperXPulsefireRaidController/RGBController_HyperXPulsefireRaid.cpp b/Controllers/HyperXMouseController/HyperXPulsefireRaidController/RGBController_HyperXPulsefireRaid.cpp index e633ee834..d17471e2c 100644 --- a/Controllers/HyperXMouseController/HyperXPulsefireRaidController/RGBController_HyperXPulsefireRaid.cpp +++ b/Controllers/HyperXMouseController/HyperXPulsefireRaidController/RGBController_HyperXPulsefireRaid.cpp @@ -58,7 +58,13 @@ RGBController_HyperXPulsefireRaid::RGBController_HyperXPulsefireRaid(HyperXPulse RGBController_HyperXPulsefireRaid::~RGBController_HyperXPulsefireRaid() { + Shutdown(); + keepalive_thread_run = 0; + keepalive_thread->join(); + delete keepalive_thread; + + delete controller; } void RGBController_HyperXPulsefireRaid::SetupZones() diff --git a/Controllers/HyperXMouseController/HyperXPulsefireSurgeController/RGBController_HyperXPulsefireSurge.cpp b/Controllers/HyperXMouseController/HyperXPulsefireSurgeController/RGBController_HyperXPulsefireSurge.cpp index 60e2e06e5..47e95efac 100644 --- a/Controllers/HyperXMouseController/HyperXPulsefireSurgeController/RGBController_HyperXPulsefireSurge.cpp +++ b/Controllers/HyperXMouseController/HyperXPulsefireSurgeController/RGBController_HyperXPulsefireSurge.cpp @@ -56,6 +56,8 @@ RGBController_HyperXPulsefireSurge::RGBController_HyperXPulsefireSurge(HyperXPul RGBController_HyperXPulsefireSurge::~RGBController_HyperXPulsefireSurge() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp b/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp index e32a21930..5978211d6 100644 --- a/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp +++ b/Controllers/HyperXMousematController/RGBController_HyperXMousemat.cpp @@ -58,6 +58,8 @@ RGBController_HyperXMousemat::RGBController_HyperXMousemat(HyperXMousematControl RGBController_HyperXMousemat::~RGBController_HyperXMousemat() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/InstantMouseController/RGBController_InstantMouse.cpp b/Controllers/InstantMouseController/RGBController_InstantMouse.cpp index 3b3e715f4..f7b091e1f 100644 --- a/Controllers/InstantMouseController/RGBController_InstantMouse.cpp +++ b/Controllers/InstantMouseController/RGBController_InstantMouse.cpp @@ -160,6 +160,8 @@ RGBController_InstantMouse::RGBController_InstantMouse(InstantMouseController* c RGBController_InstantMouse::~RGBController_InstantMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/IntelArcA770LEController/RGBController_IntelArcA770LE.cpp b/Controllers/IntelArcA770LEController/RGBController_IntelArcA770LE.cpp index 5e0a4bab0..8a9ab460e 100644 --- a/Controllers/IntelArcA770LEController/RGBController_IntelArcA770LE.cpp +++ b/Controllers/IntelArcA770LEController/RGBController_IntelArcA770LE.cpp @@ -51,6 +51,8 @@ RGBController_IntelArcA770LE::RGBController_IntelArcA770LE(IntelArcA770LEControl RGBController_IntelArcA770LE::~RGBController_IntelArcA770LE() { + Shutdown(); + delete controller; } diff --git a/Controllers/IonicoController/RGBController_Ionico.cpp b/Controllers/IonicoController/RGBController_Ionico.cpp index f51faaf7f..82cbb41f6 100644 --- a/Controllers/IonicoController/RGBController_Ionico.cpp +++ b/Controllers/IonicoController/RGBController_Ionico.cpp @@ -130,6 +130,8 @@ RGBController_Ionico::RGBController_Ionico(IonicoController* controller_ptr) RGBController_Ionico::~RGBController_Ionico() { + Shutdown(); + delete controller; } diff --git a/Controllers/JGINYUEInternalUSBController/RGBController_JGINYUEInternalUSB.cpp b/Controllers/JGINYUEInternalUSBController/RGBController_JGINYUEInternalUSB.cpp index 0b54620b5..20d89d46f 100644 --- a/Controllers/JGINYUEInternalUSBController/RGBController_JGINYUEInternalUSB.cpp +++ b/Controllers/JGINYUEInternalUSBController/RGBController_JGINYUEInternalUSB.cpp @@ -178,6 +178,8 @@ RGBController_JGINYUEInternalUSB::RGBController_JGINYUEInternalUSB(JGINYUEIntern RGBController_JGINYUEInternalUSB::~RGBController_JGINYUEInternalUSB() { + Shutdown(); + delete controller; } diff --git a/Controllers/JGINYUEInternalUSBV2Controller/RGBController_JGINYUEInternalUSBV2.cpp b/Controllers/JGINYUEInternalUSBV2Controller/RGBController_JGINYUEInternalUSBV2.cpp index 27614a08f..8f60451fb 100644 --- a/Controllers/JGINYUEInternalUSBV2Controller/RGBController_JGINYUEInternalUSBV2.cpp +++ b/Controllers/JGINYUEInternalUSBV2Controller/RGBController_JGINYUEInternalUSBV2.cpp @@ -333,6 +333,8 @@ RGBController_JGINYUEInternalUSBV2::RGBController_JGINYUEInternalUSBV2(JGINYUEIn RGBController_JGINYUEInternalUSBV2::~RGBController_JGINYUEInternalUSBV2() { + Shutdown(); + delete controller; } diff --git a/Controllers/KasaSmartController/RGBController_KasaSmart.cpp b/Controllers/KasaSmartController/RGBController_KasaSmart.cpp index 9187e1278..3b32ad877 100644 --- a/Controllers/KasaSmartController/RGBController_KasaSmart.cpp +++ b/Controllers/KasaSmartController/RGBController_KasaSmart.cpp @@ -72,6 +72,8 @@ RGBController_KasaSmart::RGBController_KasaSmart(KasaSmartController* controller RGBController_KasaSmart::~RGBController_KasaSmart() { + Shutdown(); + delete controller; } diff --git a/Controllers/KeychronKeyboardController/RGBController_KeychronKeyboard.cpp b/Controllers/KeychronKeyboardController/RGBController_KeychronKeyboard.cpp index 400f3d7b3..bae29d3ed 100644 --- a/Controllers/KeychronKeyboardController/RGBController_KeychronKeyboard.cpp +++ b/Controllers/KeychronKeyboardController/RGBController_KeychronKeyboard.cpp @@ -596,6 +596,8 @@ RGBController_KeychronKeyboard::RGBController_KeychronKeyboard(KeychronKeyboardC RGBController_KeychronKeyboard::~RGBController_KeychronKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/KingstonFuryDRAMController/RGBController_KingstonFuryDRAM.cpp b/Controllers/KingstonFuryDRAMController/RGBController_KingstonFuryDRAM.cpp index 623589e30..8cd01ec6f 100644 --- a/Controllers/KingstonFuryDRAMController/RGBController_KingstonFuryDRAM.cpp +++ b/Controllers/KingstonFuryDRAMController/RGBController_KingstonFuryDRAM.cpp @@ -377,6 +377,8 @@ RGBController_KingstonFuryDRAM::RGBController_KingstonFuryDRAM(KingstonFuryDRAMC RGBController_KingstonFuryDRAM::~RGBController_KingstonFuryDRAM() { + Shutdown(); + delete controller; } diff --git a/Controllers/LEDStripController/RGBController_LEDStrip.cpp b/Controllers/LEDStripController/RGBController_LEDStrip.cpp index 0afc4adff..27c6164aa 100644 --- a/Controllers/LEDStripController/RGBController_LEDStrip.cpp +++ b/Controllers/LEDStripController/RGBController_LEDStrip.cpp @@ -43,6 +43,8 @@ RGBController_LEDStrip::RGBController_LEDStrip(LEDStripController* controller_pt RGBController_LEDStrip::~RGBController_LEDStrip() { + Shutdown(); + delete controller; } diff --git a/Controllers/LGMonitorController/RGBController_LGMonitor.cpp b/Controllers/LGMonitorController/RGBController_LGMonitor.cpp index 1bf57c425..6c7b277bc 100644 --- a/Controllers/LGMonitorController/RGBController_LGMonitor.cpp +++ b/Controllers/LGMonitorController/RGBController_LGMonitor.cpp @@ -91,6 +91,8 @@ RGBController_LGMonitor::RGBController_LGMonitor(LGMonitorController* controller RGBController_LGMonitor::~RGBController_LGMonitor() { + Shutdown(); + keepalive_thread_run = 0; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/LIFXController/RGBController_LIFX.cpp b/Controllers/LIFXController/RGBController_LIFX.cpp index 52df0d8a6..add2d9f17 100644 --- a/Controllers/LIFXController/RGBController_LIFX.cpp +++ b/Controllers/LIFXController/RGBController_LIFX.cpp @@ -46,6 +46,8 @@ RGBController_LIFX::RGBController_LIFX(LIFXController* controller_ptr) RGBController_LIFX::~RGBController_LIFX() { + Shutdown(); + delete controller; } diff --git a/Controllers/LaviewTechnologyController/LaviewTechnologyController/RGBController_LaviewTechnology.cpp b/Controllers/LaviewTechnologyController/LaviewTechnologyController/RGBController_LaviewTechnology.cpp index 0cb58f538..671008123 100644 --- a/Controllers/LaviewTechnologyController/LaviewTechnologyController/RGBController_LaviewTechnology.cpp +++ b/Controllers/LaviewTechnologyController/LaviewTechnologyController/RGBController_LaviewTechnology.cpp @@ -148,6 +148,13 @@ RGBController_LaviewTechnology::RGBController_LaviewTechnology(LaviewTechnologyC SetupZones(); } +RGBController_LaviewTechnology::~RGBController_LaviewTechnology() +{ + Shutdown(); + + delete controller; +} + void RGBController_LaviewTechnology::SetupZones() { /*---------------------------------------------------------*\ @@ -171,11 +178,6 @@ void RGBController_LaviewTechnology::SetupZones() SetupColors(); } -RGBController_LaviewTechnology::~RGBController_LaviewTechnology() -{ - delete controller; -} - void RGBController_LaviewTechnology::DeviceUpdateLEDs() { DeviceUpdateMode(); diff --git a/Controllers/LegoDimensionsToypadBaseController/RGBController_LegoDimensionsToypadBase.cpp b/Controllers/LegoDimensionsToypadBaseController/RGBController_LegoDimensionsToypadBase.cpp index 7b3c76b1d..94ec2480f 100644 --- a/Controllers/LegoDimensionsToypadBaseController/RGBController_LegoDimensionsToypadBase.cpp +++ b/Controllers/LegoDimensionsToypadBaseController/RGBController_LegoDimensionsToypadBase.cpp @@ -72,6 +72,8 @@ RGBController_LegoDimensionsToypadBase::RGBController_LegoDimensionsToypadBase(L RGBController_LegoDimensionsToypadBase::~RGBController_LegoDimensionsToypadBase() { + Shutdown(); + delete controller; } diff --git a/Controllers/LenovoControllers/Lenovo4ZoneUSBController/RGBController_Lenovo4ZoneUSB.cpp b/Controllers/LenovoControllers/Lenovo4ZoneUSBController/RGBController_Lenovo4ZoneUSB.cpp index d303e9acd..a019986d9 100644 --- a/Controllers/LenovoControllers/Lenovo4ZoneUSBController/RGBController_Lenovo4ZoneUSB.cpp +++ b/Controllers/LenovoControllers/Lenovo4ZoneUSBController/RGBController_Lenovo4ZoneUSB.cpp @@ -87,6 +87,8 @@ RGBController_Lenovo4ZoneUSB::RGBController_Lenovo4ZoneUSB(Lenovo4ZoneUSBControl RGBController_Lenovo4ZoneUSB::~RGBController_Lenovo4ZoneUSB() { + Shutdown(); + delete controller; } diff --git a/Controllers/LenovoControllers/LenovoLegionK510Controller/RGBController_LenovoK510.cpp b/Controllers/LenovoControllers/LenovoLegionK510Controller/RGBController_LenovoK510.cpp index 4cb60d03e..29973ed9c 100644 --- a/Controllers/LenovoControllers/LenovoLegionK510Controller/RGBController_LenovoK510.cpp +++ b/Controllers/LenovoControllers/LenovoLegionK510Controller/RGBController_LenovoK510.cpp @@ -275,6 +275,8 @@ RGBController_LenovoK510::RGBController_LenovoK510(LenovoK510Controller* control RGBController_LenovoK510::~RGBController_LenovoK510() { + Shutdown(); + delete controller; } diff --git a/Controllers/LenovoControllers/LenovoM300Controller/RGBController_LenovoM300.cpp b/Controllers/LenovoControllers/LenovoM300Controller/RGBController_LenovoM300.cpp index 36e393360..3db37c014 100644 --- a/Controllers/LenovoControllers/LenovoM300Controller/RGBController_LenovoM300.cpp +++ b/Controllers/LenovoControllers/LenovoM300Controller/RGBController_LenovoM300.cpp @@ -73,6 +73,8 @@ RGBController_LenovoM300::RGBController_LenovoM300(LenovoM300Controller* control RGBController_LenovoM300::~RGBController_LenovoM300() { + Shutdown(); + delete controller; } diff --git a/Controllers/LenovoControllers/LenovoUSBController/RGBController_LenovoUSB.cpp b/Controllers/LenovoControllers/LenovoUSBController/RGBController_LenovoUSB.cpp index 8dbefb216..c38b86ffd 100644 --- a/Controllers/LenovoControllers/LenovoUSBController/RGBController_LenovoUSB.cpp +++ b/Controllers/LenovoControllers/LenovoUSBController/RGBController_LenovoUSB.cpp @@ -190,6 +190,8 @@ RGBController_LenovoUSB::RGBController_LenovoUSB(LenovoUSBController* controller RGBController_LenovoUSB::~RGBController_LenovoUSB() { + Shutdown(); + /*--------------------------------*\ | see LenovoUSBController.cpp for | | details | diff --git a/Controllers/LenovoControllers/LenovoUSBController_Gen7_8/RGBController_Lenovo_Gen7_8.cpp b/Controllers/LenovoControllers/LenovoUSBController_Gen7_8/RGBController_Lenovo_Gen7_8.cpp index 93bf7cf09..4ee93d6e8 100644 --- a/Controllers/LenovoControllers/LenovoUSBController_Gen7_8/RGBController_Lenovo_Gen7_8.cpp +++ b/Controllers/LenovoControllers/LenovoUSBController_Gen7_8/RGBController_Lenovo_Gen7_8.cpp @@ -304,6 +304,8 @@ LenovoRGBController_Gen7_8::LenovoRGBController_Gen7_8(LenovoGen7And8USBControll LenovoRGBController_Gen7_8::~LenovoRGBController_Gen7_8() { + Shutdown(); + delete controller; } diff --git a/Controllers/LenovoMotherboardController/RGBController_LenovoMotherboard.cpp b/Controllers/LenovoMotherboardController/RGBController_LenovoMotherboard.cpp index 78f5ba9f7..b1251c887 100644 --- a/Controllers/LenovoMotherboardController/RGBController_LenovoMotherboard.cpp +++ b/Controllers/LenovoMotherboardController/RGBController_LenovoMotherboard.cpp @@ -129,6 +129,8 @@ RGBController_LenovoMotherboard::RGBController_LenovoMotherboard(LenovoMotherboa RGBController_LenovoMotherboard::~RGBController_LenovoMotherboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/LexipMouseController/RGBController_LexipMouse.cpp b/Controllers/LexipMouseController/RGBController_LexipMouse.cpp index e4a4c0689..07db978f5 100644 --- a/Controllers/LexipMouseController/RGBController_LexipMouse.cpp +++ b/Controllers/LexipMouseController/RGBController_LexipMouse.cpp @@ -47,6 +47,8 @@ RGBController_LexipMouse::RGBController_LexipMouse(LexipMouseController* control RGBController_LexipMouse::~RGBController_LexipMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/LianLiController/LianLiGAIITrinityController/RGBController_LianLiGAIITrinity.cpp b/Controllers/LianLiController/LianLiGAIITrinityController/RGBController_LianLiGAIITrinity.cpp index 8727765fb..4ffd1f284 100644 --- a/Controllers/LianLiController/LianLiGAIITrinityController/RGBController_LianLiGAIITrinity.cpp +++ b/Controllers/LianLiController/LianLiGAIITrinityController/RGBController_LianLiGAIITrinity.cpp @@ -278,6 +278,8 @@ RGBController_LianLiGAIITrinity::RGBController_LianLiGAIITrinity(LianLiGAIITrini RGBController_LianLiGAIITrinity::~RGBController_LianLiGAIITrinity() { + Shutdown(); + delete controller; } diff --git a/Controllers/LianLiController/LianLiStrimerLConnectController/RGBController_LianLiStrimerLConnect.cpp b/Controllers/LianLiController/LianLiStrimerLConnectController/RGBController_LianLiStrimerLConnect.cpp index c15e8e3d0..56661348a 100644 --- a/Controllers/LianLiController/LianLiStrimerLConnectController/RGBController_LianLiStrimerLConnect.cpp +++ b/Controllers/LianLiController/LianLiStrimerLConnectController/RGBController_LianLiStrimerLConnect.cpp @@ -147,6 +147,8 @@ RGBController_LianLiStrimerLConnect::RGBController_LianLiStrimerLConnect(LianLiS RGBController_LianLiStrimerLConnect::~RGBController_LianLiStrimerLConnect() { + Shutdown(); + delete controller; } diff --git a/Controllers/LianLiController/LianLiUniHubALController/RGBController_LianLiUniHubAL.cpp b/Controllers/LianLiController/LianLiUniHubALController/RGBController_LianLiUniHubAL.cpp index 58b5e7b74..f0da9b911 100644 --- a/Controllers/LianLiController/LianLiUniHubALController/RGBController_LianLiUniHubAL.cpp +++ b/Controllers/LianLiController/LianLiUniHubALController/RGBController_LianLiUniHubAL.cpp @@ -355,6 +355,8 @@ RGBController_LianLiUniHubAL::RGBController_LianLiUniHubAL(LianLiUniHubALControl RGBController_LianLiUniHubAL::~RGBController_LianLiUniHubAL() { + Shutdown(); + delete controller; } diff --git a/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.cpp b/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.cpp index 0582e2e03..9c82e4c96 100644 --- a/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.cpp +++ b/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.cpp @@ -215,6 +215,13 @@ RGBController_LianLiUniHub::RGBController_LianLiUniHub(LianLiUniHubController* c RGBController_LianLiUniHub::SetupZones(); } +RGBController_LianLiUniHub::~RGBController_LianLiUniHub() +{ + Shutdown(); + + delete controller; +} + void RGBController_LianLiUniHub::SetupZones() { /*-------------------------------------------------*\ diff --git a/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.h b/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.h index e4ef77982..bbd22141a 100644 --- a/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.h +++ b/Controllers/LianLiController/LianLiUniHubController/RGBController_LianLiUniHub.h @@ -20,6 +20,7 @@ class RGBController_LianLiUniHub : public RGBController { public: RGBController_LianLiUniHub(LianLiUniHubController* controller_ptr); + ~RGBController_LianLiUniHub(); void SetupZones(); void DeviceResizeZone(int zone, int new_size); diff --git a/Controllers/LianLiController/LianLiUniHubSLController/RGBController_LianLiUniHubSL.cpp b/Controllers/LianLiController/LianLiUniHubSLController/RGBController_LianLiUniHubSL.cpp index 8572ff6a1..6f871aa4d 100644 --- a/Controllers/LianLiController/LianLiUniHubSLController/RGBController_LianLiUniHubSL.cpp +++ b/Controllers/LianLiController/LianLiUniHubSLController/RGBController_LianLiUniHubSL.cpp @@ -286,6 +286,8 @@ RGBController_LianLiUniHubSL::RGBController_LianLiUniHubSL(LianLiUniHubSLControl RGBController_LianLiUniHubSL::~RGBController_LianLiUniHubSL() { + Shutdown(); + delete this->controller; } diff --git a/Controllers/LianLiController/LianLiUniHubSLInfinityController/RGBController_LianLiUniHubSLInfinity.cpp b/Controllers/LianLiController/LianLiUniHubSLInfinityController/RGBController_LianLiUniHubSLInfinity.cpp index e0ecb2fe4..2b20103cd 100644 --- a/Controllers/LianLiController/LianLiUniHubSLInfinityController/RGBController_LianLiUniHubSLInfinity.cpp +++ b/Controllers/LianLiController/LianLiUniHubSLInfinityController/RGBController_LianLiUniHubSLInfinity.cpp @@ -314,6 +314,8 @@ RGBController_LianLiUniHubSLInfinity::RGBController_LianLiUniHubSLInfinity(LianL RGBController_LianLiUniHubSLInfinity::~RGBController_LianLiUniHubSLInfinity() { + Shutdown(); + delete controller; } diff --git a/Controllers/LianLiController/LianLiUniHubSLV2Controller/RGBController_LianLiUniHubSLV2.cpp b/Controllers/LianLiController/LianLiUniHubSLV2Controller/RGBController_LianLiUniHubSLV2.cpp index 92e95678d..b99548e8e 100644 --- a/Controllers/LianLiController/LianLiUniHubSLV2Controller/RGBController_LianLiUniHubSLV2.cpp +++ b/Controllers/LianLiController/LianLiUniHubSLV2Controller/RGBController_LianLiUniHubSLV2.cpp @@ -313,6 +313,8 @@ RGBController_LianLiUniHubSLV2::RGBController_LianLiUniHubSLV2(LianLiUniHubSLV2C RGBController_LianLiUniHubSLV2::~RGBController_LianLiUniHubSLV2() { + Shutdown(); + delete controller; } diff --git a/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.cpp b/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.cpp index fa56e36fb..3b5bc349d 100644 --- a/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.cpp +++ b/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.cpp @@ -353,6 +353,13 @@ RGBController_LianLiUniHub_AL10::RGBController_LianLiUniHub_AL10(LianLiUniHub_AL RGBController_LianLiUniHub_AL10::SetupZones(); } +RGBController_LianLiUniHub_AL10::~RGBController_LianLiUniHub_AL10() +{ + Shutdown(); + + delete controller; +} + void RGBController_LianLiUniHub_AL10::SetupZones() { /*-------------------------------------------------*\ diff --git a/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.h b/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.h index 9931fa752..e7adb1ede 100644 --- a/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.h +++ b/Controllers/LianLiController/LianLiUniHub_AL10Controller/RGBController_LianLiUniHub_AL10.h @@ -21,6 +21,7 @@ class RGBController_LianLiUniHub_AL10 : public RGBController { public: RGBController_LianLiUniHub_AL10(LianLiUniHub_AL10Controller* controller_ptr); + ~RGBController_LianLiUniHub_AL10(); void SetupZones(); diff --git a/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.cpp b/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.cpp index 38829065c..d7c2da07a 100644 --- a/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.cpp +++ b/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.cpp @@ -45,6 +45,13 @@ RGBController_LianLiUniversalScreen::RGBController_LianLiUniversalScreen(LianLiU SetupZones(); } +RGBController_LianLiUniversalScreen::~RGBController_LianLiUniversalScreen() +{ + Shutdown(); + + delete controller; +} + void RGBController_LianLiUniversalScreen::SetupZones() { zone Screen; diff --git a/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.h b/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.h index 94eeb31f3..33dac0c9e 100644 --- a/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.h +++ b/Controllers/LianLiController/LianLiUniversalScreenController/RGBController_LianLiUniversalScreen.h @@ -18,6 +18,7 @@ class RGBController_LianLiUniversalScreen : public RGBController { public: RGBController_LianLiUniversalScreen(LianLiUniversalScreenController* controller_ptr); + ~RGBController_LianLiUniversalScreen(); void SetupZones(); diff --git a/Controllers/LightSaltController/RGBController_LightSalt.cpp b/Controllers/LightSaltController/RGBController_LightSalt.cpp index 1f121943d..af1cf144e 100644 --- a/Controllers/LightSaltController/RGBController_LightSalt.cpp +++ b/Controllers/LightSaltController/RGBController_LightSalt.cpp @@ -33,6 +33,8 @@ static RGBColor DeflectColor(bool deflection, RGBColor color) RGBController_LightSalt::~RGBController_LightSalt() { + Shutdown(); + delete controller; } diff --git a/Controllers/LinuxLEDController/RGBController_LinuxLED_Linux.cpp b/Controllers/LinuxLEDController/RGBController_LinuxLED_Linux.cpp index 5726c9186..5ee1bdc96 100644 --- a/Controllers/LinuxLEDController/RGBController_LinuxLED_Linux.cpp +++ b/Controllers/LinuxLEDController/RGBController_LinuxLED_Linux.cpp @@ -53,6 +53,8 @@ RGBController_LinuxLED::RGBController_LinuxLED(LinuxLEDController* controller_pt RGBController_LinuxLED::~RGBController_LinuxLED() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG203LController/RGBController_LogitechG203L.cpp b/Controllers/LogitechController/LogitechG203LController/RGBController_LogitechG203L.cpp index 08e2fda91..54324a084 100644 --- a/Controllers/LogitechController/LogitechG203LController/RGBController_LogitechG203L.cpp +++ b/Controllers/LogitechController/LogitechG203LController/RGBController_LogitechG203L.cpp @@ -107,6 +107,8 @@ RGBController_LogitechG203L::RGBController_LogitechG203L(LogitechG203LController RGBController_LogitechG203L::~RGBController_LogitechG203L() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG213Controller/RGBController_LogitechG213.cpp b/Controllers/LogitechController/LogitechG213Controller/RGBController_LogitechG213.cpp index f3ab54683..7b5d4a14e 100644 --- a/Controllers/LogitechController/LogitechG213Controller/RGBController_LogitechG213.cpp +++ b/Controllers/LogitechController/LogitechG213Controller/RGBController_LogitechG213.cpp @@ -106,6 +106,8 @@ RGBController_LogitechG213::RGBController_LogitechG213(LogitechG213Controller* c RGBController_LogitechG213::~RGBController_LogitechG213() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.cpp b/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.cpp index af1874d5f..9cb0b5808 100644 --- a/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.cpp +++ b/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.cpp @@ -49,6 +49,13 @@ RGBController_LogitechG560::RGBController_LogitechG560(LogitechG560Controller* c SetupZones(); } +RGBController_LogitechG560::~RGBController_LogitechG560() +{ + Shutdown(); + + delete controller; +} + void RGBController_LogitechG560::SetupZones() { zone G560_left_front; diff --git a/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.h b/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.h index 89a5f490f..558c2f860 100644 --- a/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.h +++ b/Controllers/LogitechController/LogitechG560Controller/RGBController_LogitechG560.h @@ -19,6 +19,7 @@ class RGBController_LogitechG560 : public RGBController { public: RGBController_LogitechG560(LogitechG560Controller* controller_ptr); + ~RGBController_LogitechG560(); void SetupZones(); diff --git a/Controllers/LogitechController/LogitechG600Controller/RGBController_LogitechG600.cpp b/Controllers/LogitechController/LogitechG600Controller/RGBController_LogitechG600.cpp index 1b41597e8..492f2b5b5 100644 --- a/Controllers/LogitechController/LogitechG600Controller/RGBController_LogitechG600.cpp +++ b/Controllers/LogitechController/LogitechG600Controller/RGBController_LogitechG600.cpp @@ -64,6 +64,8 @@ RGBController_LogitechG600::RGBController_LogitechG600(LogitechG600Controller* c RGBController_LogitechG600::~RGBController_LogitechG600() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG810Controller/RGBController_LogitechG810.cpp b/Controllers/LogitechController/LogitechG810Controller/RGBController_LogitechG810.cpp index 4cf7ea304..f8122ffdd 100644 --- a/Controllers/LogitechController/LogitechG810Controller/RGBController_LogitechG810.cpp +++ b/Controllers/LogitechController/LogitechG810Controller/RGBController_LogitechG810.cpp @@ -241,6 +241,8 @@ RGBController_LogitechG810::RGBController_LogitechG810(LogitechG810Controller* c RGBController_LogitechG810::~RGBController_LogitechG810() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG815Controller/RGBController_LogitechG815.cpp b/Controllers/LogitechController/LogitechG815Controller/RGBController_LogitechG815.cpp index 313156569..5df2e3786 100644 --- a/Controllers/LogitechController/LogitechG815Controller/RGBController_LogitechG815.cpp +++ b/Controllers/LogitechController/LogitechG815Controller/RGBController_LogitechG815.cpp @@ -246,6 +246,8 @@ RGBController_LogitechG815::RGBController_LogitechG815(LogitechG815Controller* c RGBController_LogitechG815::~RGBController_LogitechG815() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG910Controller/RGBController_LogitechG910.cpp b/Controllers/LogitechController/LogitechG910Controller/RGBController_LogitechG910.cpp index c73877837..47d45e34f 100644 --- a/Controllers/LogitechController/LogitechG910Controller/RGBController_LogitechG910.cpp +++ b/Controllers/LogitechController/LogitechG910Controller/RGBController_LogitechG910.cpp @@ -242,6 +242,8 @@ RGBController_LogitechG910::RGBController_LogitechG910(LogitechG910Controller* c RGBController_LogitechG910::~RGBController_LogitechG910() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG915Controller/RGBController_LogitechG915.cpp b/Controllers/LogitechController/LogitechG915Controller/RGBController_LogitechG915.cpp index d78e5ef41..f62ad85ea 100644 --- a/Controllers/LogitechController/LogitechG915Controller/RGBController_LogitechG915.cpp +++ b/Controllers/LogitechController/LogitechG915Controller/RGBController_LogitechG915.cpp @@ -381,6 +381,8 @@ RGBController_LogitechG915::RGBController_LogitechG915(LogitechG915Controller* c RGBController_LogitechG915::~RGBController_LogitechG915() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.cpp b/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.cpp index 6aefdb8e5..06f9e7715 100644 --- a/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.cpp +++ b/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.cpp @@ -50,6 +50,13 @@ RGBController_LogitechG933::RGBController_LogitechG933(LogitechG933Controller* c SetupZones(); } +RGBController_LogitechG933::~RGBController_LogitechG933() +{ + Shutdown(); + + delete controller; +} + void RGBController_LogitechG933::SetupZones() { zone G933_logo; diff --git a/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.h b/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.h index 5a36b2c5b..5b9553171 100644 --- a/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.h +++ b/Controllers/LogitechController/LogitechG933Controller/RGBController_LogitechG933.h @@ -19,6 +19,7 @@ class RGBController_LogitechG933 : public RGBController { public: RGBController_LogitechG933(LogitechG933Controller* controller_ptr); + ~RGBController_LogitechG933(); void SetupZones(); diff --git a/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync.cpp b/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync.cpp index b81173342..dfc319e75 100644 --- a/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync.cpp +++ b/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync.cpp @@ -85,6 +85,8 @@ RGBController_LogitechGLightsync::RGBController_LogitechGLightsync(LogitechGLigh RGBController_LogitechGLightsync::~RGBController_LogitechGLightsync() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync1zone.cpp b/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync1zone.cpp index 273a39cdc..b7a2ccf59 100644 --- a/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync1zone.cpp +++ b/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGLightsync1zone.cpp @@ -85,6 +85,8 @@ RGBController_LogitechGLightsync1zone::RGBController_LogitechGLightsync1zone(Log RGBController_LogitechGLightsync1zone::~RGBController_LogitechGLightsync1zone() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGPowerPlay.cpp b/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGPowerPlay.cpp index 163bfa4d5..195735fc2 100644 --- a/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGPowerPlay.cpp +++ b/Controllers/LogitechController/LogitechGLightsyncController/RGBController_LogitechGPowerPlay.cpp @@ -79,6 +79,8 @@ RGBController_LogitechGPowerPlay::RGBController_LogitechGPowerPlay(LogitechGLigh RGBController_LogitechGPowerPlay::~RGBController_LogitechGPowerPlay() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechGProKeyboardController/RGBController_LogitechGProKeyboard.cpp b/Controllers/LogitechController/LogitechGProKeyboardController/RGBController_LogitechGProKeyboard.cpp index 5afe9c6c4..a7b6fb75c 100644 --- a/Controllers/LogitechController/LogitechGProKeyboardController/RGBController_LogitechGProKeyboard.cpp +++ b/Controllers/LogitechController/LogitechGProKeyboardController/RGBController_LogitechGProKeyboard.cpp @@ -218,6 +218,8 @@ RGBController_LogitechGProKeyboard::RGBController_LogitechGProKeyboard(LogitechG RGBController_LogitechGProKeyboard::~RGBController_LogitechGProKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechLightspeedController/RGBController_LogitechLightspeed.cpp b/Controllers/LogitechController/LogitechLightspeedController/RGBController_LogitechLightspeed.cpp index 112441f41..64e664627 100644 --- a/Controllers/LogitechController/LogitechLightspeedController/RGBController_LogitechLightspeed.cpp +++ b/Controllers/LogitechController/LogitechLightspeedController/RGBController_LogitechLightspeed.cpp @@ -159,6 +159,8 @@ RGBController_LogitechLightspeed::RGBController_LogitechLightspeed(LogitechLight RGBController_LogitechLightspeed::~RGBController_LogitechLightspeed() { + Shutdown(); + delete controller; } diff --git a/Controllers/LogitechController/LogitechX56Controller/RGBController_LogitechX56.cpp b/Controllers/LogitechController/LogitechX56Controller/RGBController_LogitechX56.cpp index 232a53ab6..d5c1b1d1a 100644 --- a/Controllers/LogitechController/LogitechX56Controller/RGBController_LogitechX56.cpp +++ b/Controllers/LogitechController/LogitechX56Controller/RGBController_LogitechX56.cpp @@ -47,6 +47,8 @@ RGBController_LogitechX56::RGBController_LogitechX56(LogitechX56Controller* cont RGBController_LogitechX56::~RGBController_LogitechX56() { + Shutdown(); + delete controller; } diff --git a/Controllers/LuxaforController/RGBController_Luxafor.cpp b/Controllers/LuxaforController/RGBController_Luxafor.cpp index 9170921c0..b12bd0f29 100644 --- a/Controllers/LuxaforController/RGBController_Luxafor.cpp +++ b/Controllers/LuxaforController/RGBController_Luxafor.cpp @@ -117,7 +117,9 @@ RGBController_Luxafor::RGBController_Luxafor(LuxaforController* controller_ptr) RGBController_Luxafor::~RGBController_Luxafor() { + Shutdown(); + delete controller; } void RGBController_Luxafor::SetupZones() diff --git a/Controllers/MNTKeyboardController/RGBController_MNTKeyboard.cpp b/Controllers/MNTKeyboardController/RGBController_MNTKeyboard.cpp index 12b727571..b227c9d48 100644 --- a/Controllers/MNTKeyboardController/RGBController_MNTKeyboard.cpp +++ b/Controllers/MNTKeyboardController/RGBController_MNTKeyboard.cpp @@ -27,6 +27,8 @@ void RGBController_MNTKeyboard::CommonInit() RGBController_MNTKeyboard::~RGBController_MNTKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSI3ZoneController/RGBController_MSI3Zone.cpp b/Controllers/MSI3ZoneController/RGBController_MSI3Zone.cpp index b2f58bd60..4f78dd288 100644 --- a/Controllers/MSI3ZoneController/RGBController_MSI3Zone.cpp +++ b/Controllers/MSI3ZoneController/RGBController_MSI3Zone.cpp @@ -45,6 +45,8 @@ RGBController_MSI3Zone::RGBController_MSI3Zone(MSI3ZoneController* controller_pt RGBController_MSI3Zone::~RGBController_MSI3Zone() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSIGPUController/MSIGPUController/RGBController_MSIGPU.cpp b/Controllers/MSIGPUController/MSIGPUController/RGBController_MSIGPU.cpp index 84444ee36..266ff1665 100644 --- a/Controllers/MSIGPUController/MSIGPUController/RGBController_MSIGPU.cpp +++ b/Controllers/MSIGPUController/MSIGPUController/RGBController_MSIGPU.cpp @@ -324,6 +324,8 @@ RGBController_MSIGPU::RGBController_MSIGPU(MSIGPUController * controller_ptr) RGBController_MSIGPU::~RGBController_MSIGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSIGPUController/MSIGPUv2Controller/RGBController_MSIGPUv2.cpp b/Controllers/MSIGPUController/MSIGPUv2Controller/RGBController_MSIGPUv2.cpp index bfe9d078e..995a9ad92 100644 --- a/Controllers/MSIGPUController/MSIGPUv2Controller/RGBController_MSIGPUv2.cpp +++ b/Controllers/MSIGPUController/MSIGPUv2Controller/RGBController_MSIGPUv2.cpp @@ -293,6 +293,8 @@ RGBController_MSIGPUv2::RGBController_MSIGPUv2(MSIGPUv2Controller * controller_p RGBController_MSIGPUv2::~RGBController_MSIGPUv2() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSIKeyboardController/MSIMysticLightKBController/RGBController_MSIMysticLightKB.cpp b/Controllers/MSIKeyboardController/MSIMysticLightKBController/RGBController_MSIMysticLightKB.cpp index e2f69d501..26c6ace4d 100644 --- a/Controllers/MSIKeyboardController/MSIMysticLightKBController/RGBController_MSIMysticLightKB.cpp +++ b/Controllers/MSIKeyboardController/MSIMysticLightKBController/RGBController_MSIMysticLightKB.cpp @@ -43,6 +43,8 @@ RGBController_MSIKeyboard::RGBController_MSIKeyboard RGBController_MSIKeyboard::~RGBController_MSIKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSIMysticLightController/MSIMysticLight112Controller/RGBController_MSIMysticLight112.cpp b/Controllers/MSIMysticLightController/MSIMysticLight112Controller/RGBController_MSIMysticLight112.cpp index d9978b4b5..814819b87 100644 --- a/Controllers/MSIMysticLightController/MSIMysticLight112Controller/RGBController_MSIMysticLight112.cpp +++ b/Controllers/MSIMysticLightController/MSIMysticLight112Controller/RGBController_MSIMysticLight112.cpp @@ -78,6 +78,8 @@ RGBController_MSIMysticLight112::RGBController_MSIMysticLight112 RGBController_MSIMysticLight112::~RGBController_MSIMysticLight112() { + Shutdown(); + zone_description.clear(); delete controller; } diff --git a/Controllers/MSIMysticLightController/MSIMysticLight162Controller/RGBController_MSIMysticLight162.cpp b/Controllers/MSIMysticLightController/MSIMysticLight162Controller/RGBController_MSIMysticLight162.cpp index 3fbf61dd2..5d7391c5f 100644 --- a/Controllers/MSIMysticLightController/MSIMysticLight162Controller/RGBController_MSIMysticLight162.cpp +++ b/Controllers/MSIMysticLightController/MSIMysticLight162Controller/RGBController_MSIMysticLight162.cpp @@ -81,6 +81,8 @@ RGBController_MSIMysticLight162::RGBController_MSIMysticLight162 RGBController_MSIMysticLight162::~RGBController_MSIMysticLight162() { + Shutdown(); + zone_description.clear(); delete controller; } diff --git a/Controllers/MSIMysticLightController/MSIMysticLight185Controller/RGBController_MSIMysticLight185.cpp b/Controllers/MSIMysticLightController/MSIMysticLight185Controller/RGBController_MSIMysticLight185.cpp index b1f8fc719..a799d5fda 100644 --- a/Controllers/MSIMysticLightController/MSIMysticLight185Controller/RGBController_MSIMysticLight185.cpp +++ b/Controllers/MSIMysticLightController/MSIMysticLight185Controller/RGBController_MSIMysticLight185.cpp @@ -101,6 +101,8 @@ RGBController_MSIMysticLight185::RGBController_MSIMysticLight185 RGBController_MSIMysticLight185::~RGBController_MSIMysticLight185() { + Shutdown(); + zone_description.clear(); delete controller; } diff --git a/Controllers/MSIMysticLightController/MSIMysticLight64Controller/RGBController_MSIMysticLight64.cpp b/Controllers/MSIMysticLightController/MSIMysticLight64Controller/RGBController_MSIMysticLight64.cpp index 302b8e89f..d96db2c3c 100644 --- a/Controllers/MSIMysticLightController/MSIMysticLight64Controller/RGBController_MSIMysticLight64.cpp +++ b/Controllers/MSIMysticLightController/MSIMysticLight64Controller/RGBController_MSIMysticLight64.cpp @@ -41,6 +41,8 @@ RGBController_MSIMysticLight64::RGBController_MSIMysticLight64 RGBController_MSIMysticLight64::~RGBController_MSIMysticLight64() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSIMysticLightController/MSIMysticLight761Controller/RGBController_MSIMysticLight761.cpp b/Controllers/MSIMysticLightController/MSIMysticLight761Controller/RGBController_MSIMysticLight761.cpp index 3f716f084..638ff933c 100644 --- a/Controllers/MSIMysticLightController/MSIMysticLight761Controller/RGBController_MSIMysticLight761.cpp +++ b/Controllers/MSIMysticLightController/MSIMysticLight761Controller/RGBController_MSIMysticLight761.cpp @@ -81,6 +81,8 @@ RGBController_MSIMysticLight761::RGBController_MSIMysticLight761 RGBController_MSIMysticLight761::~RGBController_MSIMysticLight761() { + Shutdown(); + zone_description.clear(); delete controller; } diff --git a/Controllers/MSIOptixController/RGBController_MSIOptix.cpp b/Controllers/MSIOptixController/RGBController_MSIOptix.cpp index e460b0241..07dc07f1b 100644 --- a/Controllers/MSIOptixController/RGBController_MSIOptix.cpp +++ b/Controllers/MSIOptixController/RGBController_MSIOptix.cpp @@ -334,6 +334,8 @@ RGBController_MSIOptix::RGBController_MSIOptix(MSIOptixController* controller_pt RGBController_MSIOptix::~RGBController_MSIOptix() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSIRGBController/RGBController_MSIRGB.cpp b/Controllers/MSIRGBController/RGBController_MSIRGB.cpp index 65d3d99db..d8f1e6475 100644 --- a/Controllers/MSIRGBController/RGBController_MSIRGB.cpp +++ b/Controllers/MSIRGBController/RGBController_MSIRGB.cpp @@ -44,6 +44,8 @@ RGBController_MSIRGB::RGBController_MSIRGB(MSIRGBController* controller_ptr) RGBController_MSIRGB::~RGBController_MSIRGB() { + Shutdown(); + delete controller; } diff --git a/Controllers/MSIVigorController/RGBController_MSIVigorGK30.cpp b/Controllers/MSIVigorController/RGBController_MSIVigorGK30.cpp index 9b9256194..982f3bc81 100644 --- a/Controllers/MSIVigorController/RGBController_MSIVigorGK30.cpp +++ b/Controllers/MSIVigorController/RGBController_MSIVigorGK30.cpp @@ -138,6 +138,8 @@ RGBController_MSIVigorGK30::RGBController_MSIVigorGK30(MSIVigorGK30Controller* c RGBController_MSIVigorGK30::~RGBController_MSIVigorGK30() { + Shutdown(); + delete controller; } diff --git a/Controllers/MadCatzCyborgController/RGBController_MadCatzCyborg.cpp b/Controllers/MadCatzCyborgController/RGBController_MadCatzCyborg.cpp index 339be42d6..e5cc1eee8 100644 --- a/Controllers/MadCatzCyborgController/RGBController_MadCatzCyborg.cpp +++ b/Controllers/MadCatzCyborgController/RGBController_MadCatzCyborg.cpp @@ -48,6 +48,8 @@ RGBController_MadCatzCyborg::RGBController_MadCatzCyborg(MadCatzCyborgController RGBController_MadCatzCyborg::~RGBController_MadCatzCyborg() { + Shutdown(); + delete controller; } diff --git a/Controllers/ManliGPUController/RGBController_ManliGPU.cpp b/Controllers/ManliGPUController/RGBController_ManliGPU.cpp index 658db30d9..46c70e893 100644 --- a/Controllers/ManliGPUController/RGBController_ManliGPU.cpp +++ b/Controllers/ManliGPUController/RGBController_ManliGPU.cpp @@ -138,6 +138,8 @@ RGBController_ManliGPU::RGBController_ManliGPU(ManliGPUController* controller_pt RGBController_ManliGPU::~RGBController_ManliGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/MintakaKeyboardController/RGBController_MintakaKeyboard.cpp b/Controllers/MintakaKeyboardController/RGBController_MintakaKeyboard.cpp index 8cc6a9da6..4cd03adb2 100644 --- a/Controllers/MintakaKeyboardController/RGBController_MintakaKeyboard.cpp +++ b/Controllers/MintakaKeyboardController/RGBController_MintakaKeyboard.cpp @@ -245,6 +245,8 @@ RGBController_MintakaKeyboard::RGBController_MintakaKeyboard(MintakaKeyboardCont RGBController_MintakaKeyboard::~RGBController_MintakaKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/MountainKeyboardController/RGBController_Mountain60Keyboard.cpp b/Controllers/MountainKeyboardController/RGBController_Mountain60Keyboard.cpp index 3e8e0e032..ee253b8a9 100644 --- a/Controllers/MountainKeyboardController/RGBController_Mountain60Keyboard.cpp +++ b/Controllers/MountainKeyboardController/RGBController_Mountain60Keyboard.cpp @@ -344,6 +344,8 @@ RGBController_Mountain60Keyboard::RGBController_Mountain60Keyboard(Mountain60Key RGBController_Mountain60Keyboard::~RGBController_Mountain60Keyboard() { + Shutdown(); + mountain_thread_running = false; mountain_thread->join(); delete mountain_thread; diff --git a/Controllers/MountainKeyboardController/RGBController_MountainKeyboard.cpp b/Controllers/MountainKeyboardController/RGBController_MountainKeyboard.cpp index 2b878c6e6..0de3d32fd 100644 --- a/Controllers/MountainKeyboardController/RGBController_MountainKeyboard.cpp +++ b/Controllers/MountainKeyboardController/RGBController_MountainKeyboard.cpp @@ -688,6 +688,8 @@ RGBController_MountainKeyboard::RGBController_MountainKeyboard(MountainKeyboardC RGBController_MountainKeyboard::~RGBController_MountainKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/N5312AController/RGBController_N5312A.cpp b/Controllers/N5312AController/RGBController_N5312A.cpp index 44f7c9833..c6c9e9456 100644 --- a/Controllers/N5312AController/RGBController_N5312A.cpp +++ b/Controllers/N5312AController/RGBController_N5312A.cpp @@ -85,6 +85,8 @@ RGBController_N5312A::RGBController_N5312A(N5312AController* controller_ptr) RGBController_N5312A::~RGBController_N5312A() { + Shutdown(); + delete controller; } diff --git a/Controllers/NVIDIAIlluminationController/RGBController_NVIDIAIllumination_Windows_Linux.cpp b/Controllers/NVIDIAIlluminationController/RGBController_NVIDIAIllumination_Windows_Linux.cpp index 791cfe70c..08bae5015 100644 --- a/Controllers/NVIDIAIlluminationController/RGBController_NVIDIAIllumination_Windows_Linux.cpp +++ b/Controllers/NVIDIAIlluminationController/RGBController_NVIDIAIllumination_Windows_Linux.cpp @@ -85,6 +85,8 @@ RGBController_NVIDIAIlluminationV1::RGBController_NVIDIAIlluminationV1(NVIDIAIll RGBController_NVIDIAIlluminationV1::~RGBController_NVIDIAIlluminationV1() { + Shutdown(); + delete controller; } diff --git a/Controllers/NZXTHue1Controller/RGBController_NZXTHue1.cpp b/Controllers/NZXTHue1Controller/RGBController_NZXTHue1.cpp index 9d4318967..b51b3deda 100644 --- a/Controllers/NZXTHue1Controller/RGBController_NZXTHue1.cpp +++ b/Controllers/NZXTHue1Controller/RGBController_NZXTHue1.cpp @@ -178,6 +178,8 @@ RGBController_NZXTHue1::RGBController_NZXTHue1(NZXTHue1Controller* controller_pt RGBController_NZXTHue1::~RGBController_NZXTHue1() { + Shutdown(); + delete controller; } diff --git a/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp b/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp index dd292ebc5..2bb441cc5 100644 --- a/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp +++ b/Controllers/NZXTHue2Controller/RGBController_NZXTHue2.cpp @@ -40,6 +40,8 @@ RGBController_NZXTHue2::RGBController_NZXTHue2(NZXTHue2Controller* controller_pt RGBController_NZXTHue2::~RGBController_NZXTHue2() { + Shutdown(); + delete controller; } diff --git a/Controllers/NZXTHuePlusController/RGBController_NZXTHuePlus.cpp b/Controllers/NZXTHuePlusController/RGBController_NZXTHuePlus.cpp index 72f0a9ba5..ee96cb4f5 100644 --- a/Controllers/NZXTHuePlusController/RGBController_NZXTHuePlus.cpp +++ b/Controllers/NZXTHuePlusController/RGBController_NZXTHuePlus.cpp @@ -38,6 +38,8 @@ RGBController_HuePlus::RGBController_HuePlus(HuePlusController* controller_ptr) RGBController_HuePlus::~RGBController_HuePlus() { + Shutdown(); + delete controller; } diff --git a/Controllers/NZXTKrakenController/RGBController_NZXTKraken.cpp b/Controllers/NZXTKrakenController/RGBController_NZXTKraken.cpp index fb880ccbe..6ff7f0e15 100644 --- a/Controllers/NZXTKrakenController/RGBController_NZXTKraken.cpp +++ b/Controllers/NZXTKrakenController/RGBController_NZXTKraken.cpp @@ -202,6 +202,8 @@ RGBController_NZXTKraken::RGBController_NZXTKraken(NZXTKrakenController* control RGBController_NZXTKraken::~RGBController_NZXTKraken() { + Shutdown(); + delete controller; } diff --git a/Controllers/NZXTMouseController/RGBController_NZXTMouse.cpp b/Controllers/NZXTMouseController/RGBController_NZXTMouse.cpp index fabed35e1..dcfce76c1 100644 --- a/Controllers/NZXTMouseController/RGBController_NZXTMouse.cpp +++ b/Controllers/NZXTMouseController/RGBController_NZXTMouse.cpp @@ -46,7 +46,9 @@ RGBController_NZXTMouse::RGBController_NZXTMouse(NZXTMouseController* controller RGBController_NZXTMouse::~RGBController_NZXTMouse() { + Shutdown(); + delete controller; } void RGBController_NZXTMouse::SetupZones() diff --git a/Controllers/NanoleafController/RGBController_Nanoleaf.cpp b/Controllers/NanoleafController/RGBController_Nanoleaf.cpp index 82152402a..d48c19392 100644 --- a/Controllers/NanoleafController/RGBController_Nanoleaf.cpp +++ b/Controllers/NanoleafController/RGBController_Nanoleaf.cpp @@ -87,6 +87,11 @@ RGBController_Nanoleaf::RGBController_Nanoleaf(std::string a_address, int a_port SetupZones(); } +RGBController_Nanoleaf::~RGBController_Nanoleaf() +{ + Shutdown(); +} + void RGBController_Nanoleaf::SetupZones() { zone led_zone; diff --git a/Controllers/NanoleafController/RGBController_Nanoleaf.h b/Controllers/NanoleafController/RGBController_Nanoleaf.h index e514a6ad6..504383ba5 100644 --- a/Controllers/NanoleafController/RGBController_Nanoleaf.h +++ b/Controllers/NanoleafController/RGBController_Nanoleaf.h @@ -19,6 +19,7 @@ class RGBController_Nanoleaf : public RGBController public: RGBController_Nanoleaf(std::string a_address, int a_port, std::string a_auth_token); + ~RGBController_Nanoleaf(); void SetupZones(); diff --git a/Controllers/NollieController/RGBController_Nollie.cpp b/Controllers/NollieController/RGBController_Nollie.cpp index 8220d129a..d7b8417df 100644 --- a/Controllers/NollieController/RGBController_Nollie.cpp +++ b/Controllers/NollieController/RGBController_Nollie.cpp @@ -47,6 +47,8 @@ RGBController_Nollie::RGBController_Nollie(NollieController* controller_ptr) RGBController_Nollie::~RGBController_Nollie() { + Shutdown(); + delete controller; } diff --git a/Controllers/NvidiaESAController/RGBController_NvidiaESA.cpp b/Controllers/NvidiaESAController/RGBController_NvidiaESA.cpp index 422d8f96b..913480d29 100644 --- a/Controllers/NvidiaESAController/RGBController_NvidiaESA.cpp +++ b/Controllers/NvidiaESAController/RGBController_NvidiaESA.cpp @@ -47,6 +47,8 @@ RGBController_NvidiaESA::RGBController_NvidiaESA(NvidiaESAController* controller RGBController_NvidiaESA::~RGBController_NvidiaESA() { + Shutdown(); + delete controller; } diff --git a/Controllers/OKSController/RGBController_OKSKeyboard.cpp b/Controllers/OKSController/RGBController_OKSKeyboard.cpp index 8f37219c3..9876731e3 100644 --- a/Controllers/OKSController/RGBController_OKSKeyboard.cpp +++ b/Controllers/OKSController/RGBController_OKSKeyboard.cpp @@ -158,6 +158,8 @@ RGBController_OKSKeyboard::RGBController_OKSKeyboard(OKSKeyboardController* cont RGBController_OKSKeyboard::~RGBController_OKSKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/PNYARGBEpicXGPUController/RGBController_PNYARGBEpicXGPU.cpp b/Controllers/PNYARGBEpicXGPUController/RGBController_PNYARGBEpicXGPU.cpp index 48fa46b05..ce9f1f34b 100644 --- a/Controllers/PNYARGBEpicXGPUController/RGBController_PNYARGBEpicXGPU.cpp +++ b/Controllers/PNYARGBEpicXGPUController/RGBController_PNYARGBEpicXGPU.cpp @@ -53,6 +53,8 @@ RGBController_PNYARGBEpicXGPU::RGBController_PNYARGBEpicXGPU(PNYARGBEpicXGPUCont RGBController_PNYARGBEpicXGPU::~RGBController_PNYARGBEpicXGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/PNYGPUController/RGBController_PNYGPU.cpp b/Controllers/PNYGPUController/RGBController_PNYGPU.cpp index cbe9d7e39..6fcafddd1 100644 --- a/Controllers/PNYGPUController/RGBController_PNYGPU.cpp +++ b/Controllers/PNYGPUController/RGBController_PNYGPU.cpp @@ -80,6 +80,13 @@ RGBController_PNYGPU::RGBController_PNYGPU(PNYGPUController* controller_ptr) active_mode = 0; } +RGBController_PNYGPU::~RGBController_PNYGPU() +{ + Shutdown(); + + delete controller; +} + void RGBController_PNYGPU::SetupZones() { /*---------------------------------------------------------*\ diff --git a/Controllers/PNYGPUController/RGBController_PNYGPU.h b/Controllers/PNYGPUController/RGBController_PNYGPU.h index b969bd02b..8f642baa8 100644 --- a/Controllers/PNYGPUController/RGBController_PNYGPU.h +++ b/Controllers/PNYGPUController/RGBController_PNYGPU.h @@ -18,6 +18,7 @@ class RGBController_PNYGPU : public RGBController { public: RGBController_PNYGPU(PNYGPUController* controller_ptr); + ~RGBController_PNYGPU(); void SetupZones(); diff --git a/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.cpp b/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.cpp index ec113caae..1c173220f 100644 --- a/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.cpp +++ b/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.cpp @@ -107,6 +107,13 @@ RGBController_PNYLovelaceGPU::RGBController_PNYLovelaceGPU(PNYLovelaceGPUControl active_mode = 0; } +RGBController_PNYLovelaceGPU::~RGBController_PNYLovelaceGPU() +{ + Shutdown(); + + delete controller; +} + void RGBController_PNYLovelaceGPU::SetupZones() { /*---------------------------------------------------------*\ diff --git a/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.h b/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.h index c5b914f3e..5e14a2778 100644 --- a/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.h +++ b/Controllers/PNYLovelaceGPUController/RGBController_PNYLovelaceGPU.h @@ -18,6 +18,7 @@ class RGBController_PNYLovelaceGPU : public RGBController { public: RGBController_PNYLovelaceGPU(PNYLovelaceGPUController* controller_ptr); + ~RGBController_PNYLovelaceGPU(); void SetupZones(); diff --git a/Controllers/PalitGPUController/RGBController_PalitGPU.cpp b/Controllers/PalitGPUController/RGBController_PalitGPU.cpp index a8aab69d7..0a570fa18 100644 --- a/Controllers/PalitGPUController/RGBController_PalitGPU.cpp +++ b/Controllers/PalitGPUController/RGBController_PalitGPU.cpp @@ -46,6 +46,13 @@ RGBController_PalitGPU::RGBController_PalitGPU(PalitGPUController* controller_pt active_mode = 0; } +RGBController_PalitGPU::~RGBController_PalitGPU() +{ + Shutdown(); + + delete controller; +} + void RGBController_PalitGPU::SetupZones() { /*---------------------------------------------------------*\ diff --git a/Controllers/PalitGPUController/RGBController_PalitGPU.h b/Controllers/PalitGPUController/RGBController_PalitGPU.h index 108410f16..63de872d8 100644 --- a/Controllers/PalitGPUController/RGBController_PalitGPU.h +++ b/Controllers/PalitGPUController/RGBController_PalitGPU.h @@ -18,6 +18,7 @@ class RGBController_PalitGPU : public RGBController { public: RGBController_PalitGPU(PalitGPUController* controller_ptr); + ~RGBController_PalitGPU(); void SetupZones(); diff --git a/Controllers/PatriotViperController/RGBController_PatriotViper.cpp b/Controllers/PatriotViperController/RGBController_PatriotViper.cpp index 56c77ee1f..c456bb826 100644 --- a/Controllers/PatriotViperController/RGBController_PatriotViper.cpp +++ b/Controllers/PatriotViperController/RGBController_PatriotViper.cpp @@ -127,6 +127,8 @@ RGBController_PatriotViper::RGBController_PatriotViper(PatriotViperController* v RGBController_PatriotViper::~RGBController_PatriotViper() { + Shutdown(); + delete viper; } diff --git a/Controllers/PatriotViperMouseController/RGBController_PatriotViperMouse.cpp b/Controllers/PatriotViperMouseController/RGBController_PatriotViperMouse.cpp index 58090880f..ae4373166 100644 --- a/Controllers/PatriotViperMouseController/RGBController_PatriotViperMouse.cpp +++ b/Controllers/PatriotViperMouseController/RGBController_PatriotViperMouse.cpp @@ -45,6 +45,8 @@ RGBController_PatriotViperMouse::RGBController_PatriotViperMouse(PatriotViperMou RGBController_PatriotViperMouse::~RGBController_PatriotViperMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/PatriotViperSteelController/RGBController_PatriotViperSteel.cpp b/Controllers/PatriotViperSteelController/RGBController_PatriotViperSteel.cpp index 8a0852b0f..056e14dff 100644 --- a/Controllers/PatriotViperSteelController/RGBController_PatriotViperSteel.cpp +++ b/Controllers/PatriotViperSteelController/RGBController_PatriotViperSteel.cpp @@ -45,6 +45,8 @@ RGBController_PatriotViperSteel::RGBController_PatriotViperSteel(PatriotViperSte RGBController_PatriotViperSteel::~RGBController_PatriotViperSteel() { + Shutdown(); + delete controller; } diff --git a/Controllers/PhilipsHueController/RGBController_PhilipsHue.cpp b/Controllers/PhilipsHueController/RGBController_PhilipsHue.cpp index a6535bc7a..e78be66b4 100644 --- a/Controllers/PhilipsHueController/RGBController_PhilipsHue.cpp +++ b/Controllers/PhilipsHueController/RGBController_PhilipsHue.cpp @@ -43,6 +43,13 @@ RGBController_PhilipsHue::RGBController_PhilipsHue(PhilipsHueController* control SetupZones(); } +RGBController_PhilipsHue::~RGBController_PhilipsHue() +{ + Shutdown(); + + delete controller; +} + void RGBController_PhilipsHue::SetupZones() { zone led_zone; diff --git a/Controllers/PhilipsHueController/RGBController_PhilipsHue.h b/Controllers/PhilipsHueController/RGBController_PhilipsHue.h index a44d006e0..e8fb9b2e1 100644 --- a/Controllers/PhilipsHueController/RGBController_PhilipsHue.h +++ b/Controllers/PhilipsHueController/RGBController_PhilipsHue.h @@ -18,6 +18,7 @@ class RGBController_PhilipsHue : public RGBController { public: RGBController_PhilipsHue(PhilipsHueController* controller_ptr); + ~RGBController_PhilipsHue(); void SetupZones(); diff --git a/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.cpp b/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.cpp index 51624c2ef..9cb56f05b 100644 --- a/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.cpp +++ b/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.cpp @@ -69,6 +69,13 @@ RGBController_PhilipsHueEntertainment::RGBController_PhilipsHueEntertainment(Phi KeepaliveThread = new std::thread(&RGBController_PhilipsHueEntertainment::KeepaliveThreadFunction, this); } +RGBController_PhilipsHueEntertainment::~RGBController_PhilipsHueEntertainment() +{ + Shutdown(); + + delete controller; +} + void RGBController_PhilipsHueEntertainment::SetupZones() { zone led_zone; diff --git a/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.h b/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.h index 98b92dc91..24639ae24 100644 --- a/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.h +++ b/Controllers/PhilipsHueController/RGBController_PhilipsHueEntertainment.h @@ -20,6 +20,7 @@ class RGBController_PhilipsHueEntertainment : public RGBController { public: RGBController_PhilipsHueEntertainment(PhilipsHueEntertainmentController* controller_ptr); + ~RGBController_PhilipsHueEntertainment(); void SetupZones(); diff --git a/Controllers/PhilipsWizController/RGBController_PhilipsWiz.cpp b/Controllers/PhilipsWizController/RGBController_PhilipsWiz.cpp index 39a1b8e9d..bf4e3d0b7 100644 --- a/Controllers/PhilipsWizController/RGBController_PhilipsWiz.cpp +++ b/Controllers/PhilipsWizController/RGBController_PhilipsWiz.cpp @@ -374,6 +374,8 @@ RGBController_PhilipsWiz::RGBController_PhilipsWiz(PhilipsWizController* control RGBController_PhilipsWiz::~RGBController_PhilipsWiz() { + Shutdown(); + delete controller; } diff --git a/Controllers/PowerColorGPUController/PowerColorRedDevilV1Controller/RGBController_PowerColorRedDevilV1.cpp b/Controllers/PowerColorGPUController/PowerColorRedDevilV1Controller/RGBController_PowerColorRedDevilV1.cpp index 9c92b182e..e5e503a3f 100644 --- a/Controllers/PowerColorGPUController/PowerColorRedDevilV1Controller/RGBController_PowerColorRedDevilV1.cpp +++ b/Controllers/PowerColorGPUController/PowerColorRedDevilV1Controller/RGBController_PowerColorRedDevilV1.cpp @@ -182,6 +182,8 @@ RGBController_PowerColorRedDevilV1::RGBController_PowerColorRedDevilV1(PowerColo RGBController_PowerColorRedDevilV1::~RGBController_PowerColorRedDevilV1() { + Shutdown(); + delete controller; } diff --git a/Controllers/PowerColorGPUController/PowerColorRedDevilV2Controller/RGBController_PowerColorRedDevilV2.cpp b/Controllers/PowerColorGPUController/PowerColorRedDevilV2Controller/RGBController_PowerColorRedDevilV2.cpp index f4c43f7e7..e6dc14650 100644 --- a/Controllers/PowerColorGPUController/PowerColorRedDevilV2Controller/RGBController_PowerColorRedDevilV2.cpp +++ b/Controllers/PowerColorGPUController/PowerColorRedDevilV2Controller/RGBController_PowerColorRedDevilV2.cpp @@ -162,6 +162,8 @@ RGBController_PowerColorRedDevilV2::RGBController_PowerColorRedDevilV2(PowerColo RGBController_PowerColorRedDevilV2::~RGBController_PowerColorRedDevilV2() { + Shutdown(); + delete controller; } diff --git a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRev9Controller/RGBController_QMKOpenRGBRev9.cpp b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRev9Controller/RGBController_QMKOpenRGBRev9.cpp index dc702e8a3..075e1645b 100644 --- a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRev9Controller/RGBController_QMKOpenRGBRev9.cpp +++ b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRev9Controller/RGBController_QMKOpenRGBRev9.cpp @@ -257,6 +257,8 @@ RGBController_QMKOpenRGBRev9::RGBController_QMKOpenRGBRev9(QMKOpenRGBRev9Control RGBController_QMKOpenRGBRev9::~RGBController_QMKOpenRGBRev9() { + Shutdown(); + delete controller; } diff --git a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevBController/RGBController_QMKOpenRGBRevB.cpp b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevBController/RGBController_QMKOpenRGBRevB.cpp index 95b6ee6a0..36d91c905 100644 --- a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevBController/RGBController_QMKOpenRGBRevB.cpp +++ b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevBController/RGBController_QMKOpenRGBRevB.cpp @@ -259,6 +259,8 @@ RGBController_QMKOpenRGBRevB::RGBController_QMKOpenRGBRevB(QMKOpenRGBRevBControl RGBController_QMKOpenRGBRevB::~RGBController_QMKOpenRGBRevB() { + Shutdown(); + delete controller; } diff --git a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevDController/RGBController_QMKOpenRGBRevD.cpp b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevDController/RGBController_QMKOpenRGBRevD.cpp index a04cf5aad..d61c90d32 100644 --- a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevDController/RGBController_QMKOpenRGBRevD.cpp +++ b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevDController/RGBController_QMKOpenRGBRevD.cpp @@ -258,6 +258,8 @@ RGBController_QMKOpenRGBRevD::RGBController_QMKOpenRGBRevD(QMKOpenRGBRevDControl RGBController_QMKOpenRGBRevD::~RGBController_QMKOpenRGBRevD() { + Shutdown(); + delete controller; } diff --git a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevEController/RGBController_QMKOpenRGBRevE.cpp b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevEController/RGBController_QMKOpenRGBRevE.cpp index 3bdd22b98..01ef31008 100644 --- a/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevEController/RGBController_QMKOpenRGBRevE.cpp +++ b/Controllers/QMKController/QMKOpenRGBController/QMKOpenRGBRevEController/RGBController_QMKOpenRGBRevE.cpp @@ -274,6 +274,8 @@ RGBController_QMKOpenRGBRevE::RGBController_QMKOpenRGBRevE(QMKOpenRGBRevDControl RGBController_QMKOpenRGBRevE::~RGBController_QMKOpenRGBRevE() { + Shutdown(); + delete controller; } diff --git a/Controllers/QMKController/QMKVialRGBController/RGBController_QMKVialRGB.cpp b/Controllers/QMKController/QMKVialRGBController/RGBController_QMKVialRGB.cpp index 4f77447da..36c041f00 100644 --- a/Controllers/QMKController/QMKVialRGBController/RGBController_QMKVialRGB.cpp +++ b/Controllers/QMKController/QMKVialRGBController/RGBController_QMKVialRGB.cpp @@ -149,6 +149,8 @@ RGBController_QMKVialRGB::RGBController_QMKVialRGB(QMKVialRGBController* control RGBController_QMKVialRGB::~RGBController_QMKVialRGB() { + Shutdown(); + delete controller; } diff --git a/Controllers/RazerController/RazerController/RGBController_Razer.cpp b/Controllers/RazerController/RazerController/RGBController_Razer.cpp index 56a16dc00..fdf75d95a 100644 --- a/Controllers/RazerController/RazerController/RGBController_Razer.cpp +++ b/Controllers/RazerController/RazerController/RGBController_Razer.cpp @@ -145,6 +145,8 @@ RGBController_Razer::RGBController_Razer(RazerController* controller_ptr) RGBController_Razer::~RGBController_Razer() { + Shutdown(); + delete controller; } diff --git a/Controllers/RazerController/RazerController/RGBController_RazerAddressable.cpp b/Controllers/RazerController/RazerController/RGBController_RazerAddressable.cpp index f658d1ab3..b8ed9ef41 100644 --- a/Controllers/RazerController/RazerController/RGBController_RazerAddressable.cpp +++ b/Controllers/RazerController/RazerController/RGBController_RazerAddressable.cpp @@ -124,6 +124,8 @@ RGBController_RazerAddressable::RGBController_RazerAddressable(RazerController* RGBController_RazerAddressable::~RGBController_RazerAddressable() { + Shutdown(); + delete controller; } diff --git a/Controllers/RazerController/RazerHanboController/RGBController_RazerHanbo.cpp b/Controllers/RazerController/RazerHanboController/RGBController_RazerHanbo.cpp index 704bd7ad3..076a37875 100644 --- a/Controllers/RazerController/RazerHanboController/RGBController_RazerHanbo.cpp +++ b/Controllers/RazerController/RazerHanboController/RGBController_RazerHanbo.cpp @@ -65,6 +65,8 @@ RGBController_RazerHanbo::RGBController_RazerHanbo(RazerHanboController* control RGBController_RazerHanbo::~RGBController_RazerHanbo() { + Shutdown(); + delete controller; } diff --git a/Controllers/RazerController/RazerKrakenController/RGBController_RazerKraken.cpp b/Controllers/RazerController/RazerKrakenController/RGBController_RazerKraken.cpp index 3ad018265..4b5aadb09 100644 --- a/Controllers/RazerController/RazerKrakenController/RGBController_RazerKraken.cpp +++ b/Controllers/RazerController/RazerKrakenController/RGBController_RazerKraken.cpp @@ -91,6 +91,8 @@ RGBController_RazerKraken::RGBController_RazerKraken(RazerKrakenController* cont RGBController_RazerKraken::~RGBController_RazerKraken() { + Shutdown(); + delete controller; } diff --git a/Controllers/RazerController/RazerKrakenV3Controller/RGBController_RazerKrakenV3.cpp b/Controllers/RazerController/RazerKrakenV3Controller/RGBController_RazerKrakenV3.cpp index 900474cb5..d8847bb24 100644 --- a/Controllers/RazerController/RazerKrakenV3Controller/RGBController_RazerKrakenV3.cpp +++ b/Controllers/RazerController/RazerKrakenV3Controller/RGBController_RazerKrakenV3.cpp @@ -70,6 +70,8 @@ RGBController_RazerKrakenV3::RGBController_RazerKrakenV3(RazerKrakenV3Controller RGBController_RazerKrakenV3::~RGBController_RazerKrakenV3() { + Shutdown(); + delete controller; } diff --git a/Controllers/RazerController/RazerKrakenV4Controller/RGBController_RazerKrakenV4.cpp b/Controllers/RazerController/RazerKrakenV4Controller/RGBController_RazerKrakenV4.cpp index fbcfd02a5..e0140456b 100644 --- a/Controllers/RazerController/RazerKrakenV4Controller/RGBController_RazerKrakenV4.cpp +++ b/Controllers/RazerController/RazerKrakenV4Controller/RGBController_RazerKrakenV4.cpp @@ -48,6 +48,8 @@ RGBController_RazerKrakenV4::RGBController_RazerKrakenV4(RazerKrakenV4Controller RGBController_RazerKrakenV4::~RGBController_RazerKrakenV4() { + Shutdown(); + delete controller; } diff --git a/Controllers/RedSquareKeyroxController/RedSquareKeyroxController/RGBController_RedSquareKeyrox.cpp b/Controllers/RedSquareKeyroxController/RedSquareKeyroxController/RGBController_RedSquareKeyrox.cpp index c946cd80c..5cb5eb90c 100644 --- a/Controllers/RedSquareKeyroxController/RedSquareKeyroxController/RGBController_RedSquareKeyrox.cpp +++ b/Controllers/RedSquareKeyroxController/RedSquareKeyroxController/RGBController_RedSquareKeyrox.cpp @@ -291,6 +291,8 @@ RGBController_RedSquareKeyrox::RGBController_RedSquareKeyrox(RedSquareKeyroxCont RGBController_RedSquareKeyrox::~RGBController_RedSquareKeyrox() { + Shutdown(); + delete controller; } diff --git a/Controllers/RedSquareKeyroxController/RedSquareKeyroxTKLClassicController/RGBController_RedSquareKeyroxTKLClassic.cpp b/Controllers/RedSquareKeyroxController/RedSquareKeyroxTKLClassicController/RGBController_RedSquareKeyroxTKLClassic.cpp index 29dc6c66f..754f3ca99 100644 --- a/Controllers/RedSquareKeyroxController/RedSquareKeyroxTKLClassicController/RGBController_RedSquareKeyroxTKLClassic.cpp +++ b/Controllers/RedSquareKeyroxController/RedSquareKeyroxTKLClassicController/RGBController_RedSquareKeyroxTKLClassic.cpp @@ -196,6 +196,8 @@ RGBController_RedSquareKeyroxTKLClassic::RGBController_RedSquareKeyroxTKLClassic RGBController_RedSquareKeyroxTKLClassic::~RGBController_RedSquareKeyroxTKLClassic() { + Shutdown(); + delete controller; } diff --git a/Controllers/RedragonController/RGBController_RedragonMouse.cpp b/Controllers/RedragonController/RGBController_RedragonMouse.cpp index c970e4079..e91e2fd8c 100644 --- a/Controllers/RedragonController/RGBController_RedragonMouse.cpp +++ b/Controllers/RedragonController/RGBController_RedragonMouse.cpp @@ -73,6 +73,8 @@ RGBController_RedragonMouse::RGBController_RedragonMouse(RedragonMouseController RGBController_RedragonMouse::~RGBController_RedragonMouse() { + Shutdown(); + delete controller; } diff --git a/Controllers/RobobloqLightStripController/RGBController_RobobloqLightStrip.cpp b/Controllers/RobobloqLightStripController/RGBController_RobobloqLightStrip.cpp index b2aa84abf..3033ff722 100644 --- a/Controllers/RobobloqLightStripController/RGBController_RobobloqLightStrip.cpp +++ b/Controllers/RobobloqLightStripController/RGBController_RobobloqLightStrip.cpp @@ -105,6 +105,8 @@ RGBController_RobobloqLightStrip::RGBController_RobobloqLightStrip(RobobloqLight RGBController_RobobloqLightStrip::~RGBController_RobobloqLightStrip() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp b/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp index 732a08e96..9b75bae3e 100644 --- a/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp +++ b/Controllers/RoccatController/RoccatBurstController/RGBController_RoccatBurst.cpp @@ -112,6 +112,8 @@ RGBController_RoccatBurst::RGBController_RoccatBurst(RoccatBurstController* cont RGBController_RoccatBurst::~RGBController_RoccatBurst() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp b/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp index a5c78a53a..35841f9f2 100644 --- a/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp +++ b/Controllers/RoccatController/RoccatBurstProAirController/RGBController_RoccatBurstProAir.cpp @@ -87,6 +87,8 @@ RGBController_RoccatBurstProAir::RGBController_RoccatBurstProAir(RoccatBurstProA RGBController_RoccatBurstProAir::~RGBController_RoccatBurstProAir() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp b/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp index 88b39d7bd..174c5b5c9 100644 --- a/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp +++ b/Controllers/RoccatController/RoccatEloController/RGBController_RoccatElo.cpp @@ -46,6 +46,8 @@ RGBController_RoccatElo::RGBController_RoccatElo(RoccatEloController* controller RGBController_RoccatElo::~RGBController_RoccatElo() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp b/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp index 5a325061c..1aa9a8c94 100644 --- a/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp +++ b/Controllers/RoccatController/RoccatHordeAimoController/RGBController_RoccatHordeAimo.cpp @@ -45,6 +45,8 @@ RGBController_RoccatHordeAimo::RGBController_RoccatHordeAimo(RoccatHordeAimoCont RGBController_RoccatHordeAimo::~RGBController_RoccatHordeAimo() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp b/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp index 52b43c7e9..b07406adb 100644 --- a/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp +++ b/Controllers/RoccatController/RoccatKoneAimoController/RGBController_RoccatKoneAimo.cpp @@ -50,6 +50,8 @@ RGBController_RoccatKoneAimo::RGBController_RoccatKoneAimo(RoccatKoneAimoControl RGBController_RoccatKoneAimo::~RGBController_RoccatKoneAimo() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp b/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp index 9f7a0cebb..08aaaba21 100644 --- a/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp +++ b/Controllers/RoccatController/RoccatKoneProAirController/RGBController_RoccatKoneProAir.cpp @@ -121,6 +121,8 @@ RGBController_RoccatKoneProAir::RGBController_RoccatKoneProAir(RoccatKoneProAirC RGBController_RoccatKoneProAir::~RGBController_RoccatKoneProAir() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp b/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp index 9cef5b3f3..77656e788 100644 --- a/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp +++ b/Controllers/RoccatController/RoccatKoneProController/RGBController_RoccatKonePro.cpp @@ -114,6 +114,8 @@ RGBController_RoccatKonePro::RGBController_RoccatKonePro(RoccatKoneProController RGBController_RoccatKonePro::~RGBController_RoccatKonePro() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp b/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp index ec6e1565b..fd8fde02a 100644 --- a/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp +++ b/Controllers/RoccatController/RoccatKoneXPController/RGBController_RoccatKoneXP.cpp @@ -169,6 +169,8 @@ RGBController_RoccatKoneXP::RGBController_RoccatKoneXP(RoccatKoneXPController* c RGBController_RoccatKoneXP::~RGBController_RoccatKoneXP() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp b/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp index e2b1c05bc..b54507e99 100644 --- a/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp +++ b/Controllers/RoccatController/RoccatKovaController/RGBController_RoccatKova.cpp @@ -83,6 +83,8 @@ RGBController_RoccatKova::RGBController_RoccatKova(RoccatKovaController* control RGBController_RoccatKova::~RGBController_RoccatKova() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp b/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp index 3befa0e32..ebe2dcac8 100644 --- a/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp +++ b/Controllers/RoccatController/RoccatSenseAimoController/RGBController_RoccatSenseAimo.cpp @@ -133,6 +133,8 @@ RGBController_RoccatSenseAimo::RGBController_RoccatSenseAimo(RoccatSenseAimoCont RGBController_RoccatSenseAimo::~RGBController_RoccatSenseAimo() { + Shutdown(); + delete controller; } diff --git a/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp b/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp index e9aa98fe5..f10c88141 100644 --- a/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp +++ b/Controllers/RoccatController/RoccatVulcanKeyboardController/RGBController_RoccatVulcanKeyboard.cpp @@ -98,6 +98,8 @@ RGBController_RoccatVulcanKeyboard::RGBController_RoccatVulcanKeyboard(RoccatVul RGBController_RoccatVulcanKeyboard::~RGBController_RoccatVulcanKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/SRGBmodsController/SRGBmodsLEDControllerV1/RGBController_SRGBmodsLEDControllerV1.cpp b/Controllers/SRGBmodsController/SRGBmodsLEDControllerV1/RGBController_SRGBmodsLEDControllerV1.cpp index 8e70ff79d..7457af157 100644 --- a/Controllers/SRGBmodsController/SRGBmodsLEDControllerV1/RGBController_SRGBmodsLEDControllerV1.cpp +++ b/Controllers/SRGBmodsController/SRGBmodsLEDControllerV1/RGBController_SRGBmodsLEDControllerV1.cpp @@ -87,6 +87,8 @@ RGBController_SRGBmodsLEDControllerV1::RGBController_SRGBmodsLEDControllerV1(SRG RGBController_SRGBmodsLEDControllerV1::~RGBController_SRGBmodsLEDControllerV1() { + Shutdown(); + delete controller; } diff --git a/Controllers/SRGBmodsController/SRGBmodsPicoController/RGBController_SRGBmodsPico.cpp b/Controllers/SRGBmodsController/SRGBmodsPicoController/RGBController_SRGBmodsPico.cpp index f5f101cf0..2f0b17f00 100644 --- a/Controllers/SRGBmodsController/SRGBmodsPicoController/RGBController_SRGBmodsPico.cpp +++ b/Controllers/SRGBmodsController/SRGBmodsPicoController/RGBController_SRGBmodsPico.cpp @@ -46,6 +46,8 @@ RGBController_SRGBmodsPico::RGBController_SRGBmodsPico(SRGBmodsPicoController* c RGBController_SRGBmodsPico::~RGBController_SRGBmodsPico() { + Shutdown(); + delete controller; } diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp index 3a49d4d36..0126070bc 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV1Controller/RGBController_SapphireNitroGlowV1.cpp @@ -96,6 +96,8 @@ RGBController_SapphireNitroGlowV1::RGBController_SapphireNitroGlowV1(SapphireNit RGBController_SapphireNitroGlowV1::~RGBController_SapphireNitroGlowV1() { + Shutdown(); + delete controller; } diff --git a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp index 9744c4a2e..0d5e70ab6 100644 --- a/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp +++ b/Controllers/SapphireGPUController/SapphireNitroGlowV3Controller/RGBController_SapphireNitroGlowV3.cpp @@ -96,6 +96,8 @@ RGBController_SapphireNitroGlowV3::RGBController_SapphireNitroGlowV3(SapphireNit RGBController_SapphireNitroGlowV3::~RGBController_SapphireNitroGlowV3() { + Shutdown(); + delete controller; } diff --git a/Controllers/SeagateController/RGBController_Seagate.cpp b/Controllers/SeagateController/RGBController_Seagate.cpp index b457f5f34..49cab04b9 100644 --- a/Controllers/SeagateController/RGBController_Seagate.cpp +++ b/Controllers/SeagateController/RGBController_Seagate.cpp @@ -65,6 +65,8 @@ RGBController_Seagate::RGBController_Seagate(SeagateController* controller_ptr) RGBController_Seagate::~RGBController_Seagate() { + Shutdown(); + delete controller; } diff --git a/Controllers/SinowealthController/GenesisXenon200Controller/RGBController_GenesisXenon200.cpp b/Controllers/SinowealthController/GenesisXenon200Controller/RGBController_GenesisXenon200.cpp index d5b268a58..ef70bfe4e 100644 --- a/Controllers/SinowealthController/GenesisXenon200Controller/RGBController_GenesisXenon200.cpp +++ b/Controllers/SinowealthController/GenesisXenon200Controller/RGBController_GenesisXenon200.cpp @@ -79,6 +79,8 @@ RGBController_GenesisXenon200::RGBController_GenesisXenon200(GenesisXenon200Cont RGBController_GenesisXenon200::~RGBController_GenesisXenon200() { + Shutdown(); + delete controller; } diff --git a/Controllers/SinowealthController/Sinowealth1007Controller/RGBController_Sinowealth1007.cpp b/Controllers/SinowealthController/Sinowealth1007Controller/RGBController_Sinowealth1007.cpp index bfe801c2f..8d7461b0e 100644 --- a/Controllers/SinowealthController/Sinowealth1007Controller/RGBController_Sinowealth1007.cpp +++ b/Controllers/SinowealthController/Sinowealth1007Controller/RGBController_Sinowealth1007.cpp @@ -177,6 +177,8 @@ RGBController_Sinowealth1007::RGBController_Sinowealth1007(SinowealthController1 RGBController_Sinowealth1007::~RGBController_Sinowealth1007() { + Shutdown(); + delete controller; } diff --git a/Controllers/SinowealthController/SinowealthController/RGBController_Sinowealth.cpp b/Controllers/SinowealthController/SinowealthController/RGBController_Sinowealth.cpp index 3e9eb2cea..26fc562d8 100644 --- a/Controllers/SinowealthController/SinowealthController/RGBController_Sinowealth.cpp +++ b/Controllers/SinowealthController/SinowealthController/RGBController_Sinowealth.cpp @@ -151,6 +151,8 @@ RGBController_Sinowealth::RGBController_Sinowealth(SinowealthController* control RGBController_Sinowealth::~RGBController_Sinowealth() { + Shutdown(); + delete controller; } diff --git a/Controllers/SinowealthController/SinowealthGMOWController/RGBController_SinowealthGMOW.cpp b/Controllers/SinowealthController/SinowealthGMOWController/RGBController_SinowealthGMOW.cpp index 7cab7dfa6..477051296 100644 --- a/Controllers/SinowealthController/SinowealthGMOWController/RGBController_SinowealthGMOW.cpp +++ b/Controllers/SinowealthController/SinowealthGMOWController/RGBController_SinowealthGMOW.cpp @@ -158,6 +158,8 @@ RGBController_GMOW::RGBController_GMOW(SinowealthGMOWController* controller_ptr) RGBController_GMOW::~RGBController_GMOW() { + Shutdown(); + delete controller; } diff --git a/Controllers/SinowealthController/SinowealthKeyboard10cController/RGBController_SinowealthKeyboard10c.cpp b/Controllers/SinowealthController/SinowealthKeyboard10cController/RGBController_SinowealthKeyboard10c.cpp index bf0d1ace3..5ada64592 100644 --- a/Controllers/SinowealthController/SinowealthKeyboard10cController/RGBController_SinowealthKeyboard10c.cpp +++ b/Controllers/SinowealthController/SinowealthKeyboard10cController/RGBController_SinowealthKeyboard10c.cpp @@ -71,6 +71,8 @@ RGBController_SinowealthKeyboard10c::RGBController_SinowealthKeyboard10c( RGBController_SinowealthKeyboard10c::~RGBController_SinowealthKeyboard10c() { + Shutdown(); + keepalive_thread_run = false; keepalive_thread->join(); delete keepalive_thread; diff --git a/Controllers/SinowealthController/SinowealthKeyboard16Controller/RGBController_SinowealthKeyboard16.cpp b/Controllers/SinowealthController/SinowealthKeyboard16Controller/RGBController_SinowealthKeyboard16.cpp index 6f8001867..6ca5be021 100644 --- a/Controllers/SinowealthController/SinowealthKeyboard16Controller/RGBController_SinowealthKeyboard16.cpp +++ b/Controllers/SinowealthController/SinowealthKeyboard16Controller/RGBController_SinowealthKeyboard16.cpp @@ -263,6 +263,8 @@ RGBController_SinowealthKeyboard16::RGBController_SinowealthKeyboard16(Sinowealt RGBController_SinowealthKeyboard16::~RGBController_SinowealthKeyboard16() { + Shutdown(); + delete controller; } diff --git a/Controllers/SinowealthController/SinowealthKeyboard90Controller/RGBController_SinowealthKeyboard90.cpp b/Controllers/SinowealthController/SinowealthKeyboard90Controller/RGBController_SinowealthKeyboard90.cpp index 84902d222..fafa2bb90 100644 --- a/Controllers/SinowealthController/SinowealthKeyboard90Controller/RGBController_SinowealthKeyboard90.cpp +++ b/Controllers/SinowealthController/SinowealthKeyboard90Controller/RGBController_SinowealthKeyboard90.cpp @@ -79,6 +79,8 @@ RGBController_SinowealthKeyboard90::RGBController_SinowealthKeyboard90(Sinowealt RGBController_SinowealthKeyboard90::~RGBController_SinowealthKeyboard90() { + Shutdown(); + delete controller; } diff --git a/Controllers/SinowealthController/SinowealthKeyboardController/RGBController_SinowealthKeyboard.cpp b/Controllers/SinowealthController/SinowealthKeyboardController/RGBController_SinowealthKeyboard.cpp index 04cb96794..277db645d 100644 --- a/Controllers/SinowealthController/SinowealthKeyboardController/RGBController_SinowealthKeyboard.cpp +++ b/Controllers/SinowealthController/SinowealthKeyboardController/RGBController_SinowealthKeyboard.cpp @@ -406,6 +406,8 @@ RGBController_SinowealthKeyboard::RGBController_SinowealthKeyboard(SinowealthKey RGBController_SinowealthKeyboard::~RGBController_SinowealthKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/SkyloongController/RGBController_SkyloongGK104Pro.cpp b/Controllers/SkyloongController/RGBController_SkyloongGK104Pro.cpp index b764a12be..d8223879f 100644 --- a/Controllers/SkyloongController/RGBController_SkyloongGK104Pro.cpp +++ b/Controllers/SkyloongController/RGBController_SkyloongGK104Pro.cpp @@ -76,6 +76,8 @@ RGBController_SkyloongGK104Pro::RGBController_SkyloongGK104Pro(SkyloongGK104ProC RGBController_SkyloongGK104Pro::~RGBController_SkyloongGK104Pro() { + Shutdown(); + delete controller; } diff --git a/Controllers/SonyGamepadController/SonyDS4Controller/RGBController_SonyDS4.cpp b/Controllers/SonyGamepadController/SonyDS4Controller/RGBController_SonyDS4.cpp index 9e2ec64df..998a1ab72 100644 --- a/Controllers/SonyGamepadController/SonyDS4Controller/RGBController_SonyDS4.cpp +++ b/Controllers/SonyGamepadController/SonyDS4Controller/RGBController_SonyDS4.cpp @@ -46,6 +46,8 @@ RGBController_SonyDS4::RGBController_SonyDS4(SonyDS4Controller* controller_ptr) RGBController_SonyDS4::~RGBController_SonyDS4() { + Shutdown(); + delete controller; } diff --git a/Controllers/SonyGamepadController/SonyDualSenseController/RGBController_SonyDualSense.cpp b/Controllers/SonyGamepadController/SonyDualSenseController/RGBController_SonyDualSense.cpp index 21a138a76..a876d9eba 100644 --- a/Controllers/SonyGamepadController/SonyDualSenseController/RGBController_SonyDualSense.cpp +++ b/Controllers/SonyGamepadController/SonyDualSenseController/RGBController_SonyDualSense.cpp @@ -75,6 +75,8 @@ RGBController_SonyDualSense::RGBController_SonyDualSense(SonyDualSenseController RGBController_SonyDualSense::~RGBController_SonyDualSense() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesApex3Controller/RGBController_SteelSeriesApex3.cpp b/Controllers/SteelSeriesController/SteelSeriesApex3Controller/RGBController_SteelSeriesApex3.cpp index e1ccc5813..966ca372e 100644 --- a/Controllers/SteelSeriesController/SteelSeriesApex3Controller/RGBController_SteelSeriesApex3.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesApex3Controller/RGBController_SteelSeriesApex3.cpp @@ -65,6 +65,8 @@ RGBController_SteelSeriesApex3::RGBController_SteelSeriesApex3(SteelSeriesApex3C RGBController_SteelSeriesApex3::~RGBController_SteelSeriesApex3() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesApexController/RGBController_SteelSeriesApex.cpp b/Controllers/SteelSeriesController/SteelSeriesApexController/RGBController_SteelSeriesApex.cpp index 3c9c22ccd..64a4f0d58 100644 --- a/Controllers/SteelSeriesController/SteelSeriesApexController/RGBController_SteelSeriesApex.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesApexController/RGBController_SteelSeriesApex.cpp @@ -65,6 +65,8 @@ RGBController_SteelSeriesApex::RGBController_SteelSeriesApex(SteelSeriesApexBase RGBController_SteelSeriesApex::~RGBController_SteelSeriesApex() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesArctis5Controller/RGBController_SteelSeriesArctis5.cpp b/Controllers/SteelSeriesController/SteelSeriesArctis5Controller/RGBController_SteelSeriesArctis5.cpp index 62c8568b1..29359e04a 100644 --- a/Controllers/SteelSeriesController/SteelSeriesArctis5Controller/RGBController_SteelSeriesArctis5.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesArctis5Controller/RGBController_SteelSeriesArctis5.cpp @@ -46,6 +46,8 @@ RGBController_SteelSeriesArctis5::RGBController_SteelSeriesArctis5(SteelSeriesAr RGBController_SteelSeriesArctis5::~RGBController_SteelSeriesArctis5() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesOldApexController/RGBController_SteelSeriesOldApex.cpp b/Controllers/SteelSeriesController/SteelSeriesOldApexController/RGBController_SteelSeriesOldApex.cpp index 96a8329dc..f8d0f1724 100644 --- a/Controllers/SteelSeriesController/SteelSeriesOldApexController/RGBController_SteelSeriesOldApex.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesOldApexController/RGBController_SteelSeriesOldApex.cpp @@ -50,6 +50,8 @@ RGBController_SteelSeriesOldApex::RGBController_SteelSeriesOldApex(SteelSeriesOl RGBController_SteelSeriesOldApex::~RGBController_SteelSeriesOldApex() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesQCKMatController/RGBController_SteelSeriesQCKMat.cpp b/Controllers/SteelSeriesController/SteelSeriesQCKMatController/RGBController_SteelSeriesQCKMat.cpp index ab08eb336..d105e4200 100644 --- a/Controllers/SteelSeriesController/SteelSeriesQCKMatController/RGBController_SteelSeriesQCKMat.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesQCKMatController/RGBController_SteelSeriesQCKMat.cpp @@ -44,6 +44,8 @@ RGBController_SteelSeriesQCKMat::RGBController_SteelSeriesQCKMat(SteelSeriesQCKM RGBController_SteelSeriesQCKMat::~RGBController_SteelSeriesQCKMat() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesRival3Controller/RGBController_SteelSeriesRival3.cpp b/Controllers/SteelSeriesController/SteelSeriesRival3Controller/RGBController_SteelSeriesRival3.cpp index dcd291f1b..8ffd21224 100644 --- a/Controllers/SteelSeriesController/SteelSeriesRival3Controller/RGBController_SteelSeriesRival3.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesRival3Controller/RGBController_SteelSeriesRival3.cpp @@ -113,6 +113,8 @@ void RGBController_SteelSeriesRival3::DeviceSaveMode() RGBController_SteelSeriesRival3::~RGBController_SteelSeriesRival3() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesRivalController/RGBController_SteelSeriesRival.cpp b/Controllers/SteelSeriesController/SteelSeriesRivalController/RGBController_SteelSeriesRival.cpp index f58cb6696..427337f1b 100644 --- a/Controllers/SteelSeriesController/SteelSeriesRivalController/RGBController_SteelSeriesRival.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesRivalController/RGBController_SteelSeriesRival.cpp @@ -82,6 +82,8 @@ RGBController_SteelSeriesRival::RGBController_SteelSeriesRival(SteelSeriesRivalC RGBController_SteelSeriesRival::~RGBController_SteelSeriesRival() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesSenseiController/RGBController_SteelSeriesSensei.cpp b/Controllers/SteelSeriesController/SteelSeriesSenseiController/RGBController_SteelSeriesSensei.cpp index b42f13ff4..6ef2f91e4 100644 --- a/Controllers/SteelSeriesController/SteelSeriesSenseiController/RGBController_SteelSeriesSensei.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesSenseiController/RGBController_SteelSeriesSensei.cpp @@ -66,6 +66,8 @@ RGBController_SteelSeriesSensei::RGBController_SteelSeriesSensei(SteelSeriesSens RGBController_SteelSeriesSensei::~RGBController_SteelSeriesSensei() { + Shutdown(); + delete controller; } diff --git a/Controllers/SteelSeriesController/SteelSeriesSiberiaController/RGBController_SteelSeriesSiberia.cpp b/Controllers/SteelSeriesController/SteelSeriesSiberiaController/RGBController_SteelSeriesSiberia.cpp index 14873ab30..5125e943b 100644 --- a/Controllers/SteelSeriesController/SteelSeriesSiberiaController/RGBController_SteelSeriesSiberia.cpp +++ b/Controllers/SteelSeriesController/SteelSeriesSiberiaController/RGBController_SteelSeriesSiberia.cpp @@ -44,6 +44,8 @@ RGBController_SteelSeriesSiberia::RGBController_SteelSeriesSiberia(SteelSeriesSi RGBController_SteelSeriesSiberia::~RGBController_SteelSeriesSiberia() { + Shutdown(); + delete controller; } diff --git a/Controllers/StreamDeckController/RGBController_ElgatoStreamDeck.cpp b/Controllers/StreamDeckController/RGBController_ElgatoStreamDeck.cpp index 24345f4b5..4cb3fc806 100644 --- a/Controllers/StreamDeckController/RGBController_ElgatoStreamDeck.cpp +++ b/Controllers/StreamDeckController/RGBController_ElgatoStreamDeck.cpp @@ -43,6 +43,8 @@ RGBController_ElgatoStreamDeck::RGBController_ElgatoStreamDeck(ElgatoStreamDeckC RGBController_ElgatoStreamDeck::~RGBController_ElgatoStreamDeck() { + Shutdown(); + delete controller; } diff --git a/Controllers/TForceXtreemController/RGBController_TForceXtreem.cpp b/Controllers/TForceXtreemController/RGBController_TForceXtreem.cpp index 3ca0f1cab..e0c260f85 100644 --- a/Controllers/TForceXtreemController/RGBController_TForceXtreem.cpp +++ b/Controllers/TForceXtreemController/RGBController_TForceXtreem.cpp @@ -261,6 +261,8 @@ RGBController_TForceXtreem::RGBController_TForceXtreem(TForceXtreemController * RGBController_TForceXtreem::~RGBController_TForceXtreem() { + Shutdown(); + delete controller; } diff --git a/Controllers/TecknetController/RGBController_Tecknet.cpp b/Controllers/TecknetController/RGBController_Tecknet.cpp index 085bebdd3..caa1865f4 100644 --- a/Controllers/TecknetController/RGBController_Tecknet.cpp +++ b/Controllers/TecknetController/RGBController_Tecknet.cpp @@ -67,6 +67,8 @@ RGBController_Tecknet::RGBController_Tecknet(TecknetController* controller_ptr) RGBController_Tecknet::~RGBController_Tecknet() { + Shutdown(); + delete controller; } diff --git a/Controllers/ThermaltakePoseidonZRGBController/RGBController_ThermaltakePoseidonZRGB.cpp b/Controllers/ThermaltakePoseidonZRGBController/RGBController_ThermaltakePoseidonZRGB.cpp index c5b68ac02..ec04752c4 100644 --- a/Controllers/ThermaltakePoseidonZRGBController/RGBController_ThermaltakePoseidonZRGB.cpp +++ b/Controllers/ThermaltakePoseidonZRGBController/RGBController_ThermaltakePoseidonZRGB.cpp @@ -212,6 +212,8 @@ RGBController_PoseidonZRGB::RGBController_PoseidonZRGB(PoseidonZRGBController* c RGBController_PoseidonZRGB::~RGBController_PoseidonZRGB() { + Shutdown(); + delete controller; } diff --git a/Controllers/ThermaltakeRiingController/ThermaltakeRiingController/RGBController_ThermaltakeRiing.cpp b/Controllers/ThermaltakeRiingController/ThermaltakeRiingController/RGBController_ThermaltakeRiing.cpp index 1e4e3e2e4..8b4949b99 100644 --- a/Controllers/ThermaltakeRiingController/ThermaltakeRiingController/RGBController_ThermaltakeRiing.cpp +++ b/Controllers/ThermaltakeRiingController/ThermaltakeRiingController/RGBController_ThermaltakeRiing.cpp @@ -122,6 +122,8 @@ RGBController_ThermaltakeRiing::RGBController_ThermaltakeRiing(ThermaltakeRiingC RGBController_ThermaltakeRiing::~RGBController_ThermaltakeRiing() { + Shutdown(); + delete controller; } diff --git a/Controllers/ThermaltakeRiingController/ThermaltakeRiingQuadController/RGBController_ThermaltakeRiingQuad.cpp b/Controllers/ThermaltakeRiingController/ThermaltakeRiingQuadController/RGBController_ThermaltakeRiingQuad.cpp index c237f04e8..f0c53876e 100644 --- a/Controllers/ThermaltakeRiingController/ThermaltakeRiingQuadController/RGBController_ThermaltakeRiingQuad.cpp +++ b/Controllers/ThermaltakeRiingController/ThermaltakeRiingQuadController/RGBController_ThermaltakeRiingQuad.cpp @@ -48,6 +48,8 @@ RGBController_ThermaltakeRiingQuad::RGBController_ThermaltakeRiingQuad(Thermalta RGBController_ThermaltakeRiingQuad::~RGBController_ThermaltakeRiingQuad() { + Shutdown(); + delete controller; } diff --git a/Controllers/ThermaltakeRiingController/ThermaltakeRiingTrioController/RGBController_ThermaltakeRiingTrio.cpp b/Controllers/ThermaltakeRiingController/ThermaltakeRiingTrioController/RGBController_ThermaltakeRiingTrio.cpp index dc7257925..7058c152b 100644 --- a/Controllers/ThermaltakeRiingController/ThermaltakeRiingTrioController/RGBController_ThermaltakeRiingTrio.cpp +++ b/Controllers/ThermaltakeRiingController/ThermaltakeRiingTrioController/RGBController_ThermaltakeRiingTrio.cpp @@ -48,6 +48,8 @@ RGBController_ThermaltakeRiingTrio::RGBController_ThermaltakeRiingTrio(Thermalta RGBController_ThermaltakeRiingTrio::~RGBController_ThermaltakeRiingTrio() { + Shutdown(); + delete controller; } diff --git a/Controllers/ThingMController/RGBController_BlinkController.cpp b/Controllers/ThingMController/RGBController_BlinkController.cpp index a34342fa5..eebc1b9c7 100644 --- a/Controllers/ThingMController/RGBController_BlinkController.cpp +++ b/Controllers/ThingMController/RGBController_BlinkController.cpp @@ -69,6 +69,8 @@ RGBController_BlinkController::RGBController_BlinkController(BlinkController* co RGBController_BlinkController::~RGBController_BlinkController() { + Shutdown(); + delete controller; } diff --git a/Controllers/TrustController/TrustGXT114Controller/RGBController_TrustGXT114.cpp b/Controllers/TrustController/TrustGXT114Controller/RGBController_TrustGXT114.cpp index 1b2cd0efa..6a2c94b6e 100644 --- a/Controllers/TrustController/TrustGXT114Controller/RGBController_TrustGXT114.cpp +++ b/Controllers/TrustController/TrustGXT114Controller/RGBController_TrustGXT114.cpp @@ -79,6 +79,8 @@ RGBController_TrustGXT114::RGBController_TrustGXT114(TrustGXT114Controller* cont RGBController_TrustGXT114::~RGBController_TrustGXT114() { + Shutdown(); + delete controller; } diff --git a/Controllers/TrustController/TrustGXT180Controller/RGBController_TrustGXT180.cpp b/Controllers/TrustController/TrustGXT180Controller/RGBController_TrustGXT180.cpp index e8ce8b190..b3294fc78 100644 --- a/Controllers/TrustController/TrustGXT180Controller/RGBController_TrustGXT180.cpp +++ b/Controllers/TrustController/TrustGXT180Controller/RGBController_TrustGXT180.cpp @@ -83,6 +83,8 @@ RGBController_TrustGXT180::RGBController_TrustGXT180(TrustGXT180Controller* cont RGBController_TrustGXT180::~RGBController_TrustGXT180() { + Shutdown(); + delete controller; } diff --git a/Controllers/ValkyrieKeyboardController/RGBController_ValkyrieKeyboard.cpp b/Controllers/ValkyrieKeyboardController/RGBController_ValkyrieKeyboard.cpp index fabe774d1..4287287bb 100644 --- a/Controllers/ValkyrieKeyboardController/RGBController_ValkyrieKeyboard.cpp +++ b/Controllers/ValkyrieKeyboardController/RGBController_ValkyrieKeyboard.cpp @@ -293,6 +293,8 @@ RGBController_ValkyrieKeyboard::RGBController_ValkyrieKeyboard(ValkyrieKeyboardC RGBController_ValkyrieKeyboard::~RGBController_ValkyrieKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.cpp b/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.cpp index f65ddc419..b1b5b1810 100644 --- a/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.cpp +++ b/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.cpp @@ -84,6 +84,13 @@ RGBController_XG270QC::RGBController_XG270QC(VS_XG270QC_Controller* controller_p RGBController_XG270QC::SetupZones(); } +RGBController_XG270QC::~RGBController_XG270QC() +{ + Shutdown(); + + delete controller; +} + void RGBController_XG270QC::SetupZones() { zone base; diff --git a/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.h b/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.h index 0839f2cec..f28372c99 100644 --- a/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.h +++ b/Controllers/ViewSonicController/XG270QC/RGBController_XG270QC.h @@ -16,6 +16,7 @@ class RGBController_XG270QC : public RGBController { public: RGBController_XG270QC(VS_XG270QC_Controller* controller_ptr); + ~RGBController_XG270QC(); void SetupZones(); diff --git a/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.cpp b/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.cpp index ea2734b5c..b626a90e3 100644 --- a/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.cpp +++ b/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.cpp @@ -105,6 +105,13 @@ RGBController_XG270QG::RGBController_XG270QG(VS_XG270QG_Controller* controller_p RGBController_XG270QG::SetupZones(); } +RGBController_XG270QG::~RGBController_XG270QG() +{ + Shutdown(); + + delete controller; +} + void RGBController_XG270QG::SetupZones() { zone base; diff --git a/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.h b/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.h index d6ac59a0a..47e1d81e0 100644 --- a/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.h +++ b/Controllers/ViewSonicController/XG270QG/RGBController_XG270QG.h @@ -18,6 +18,7 @@ class RGBController_XG270QG : public RGBController { public: RGBController_XG270QG(VS_XG270QG_Controller* controller_ptr); + ~RGBController_XG270QG(); void SetupZones(); diff --git a/Controllers/WinbondGamingKeyboardController/RGBController_WinbondGamingKeyboard.cpp b/Controllers/WinbondGamingKeyboardController/RGBController_WinbondGamingKeyboard.cpp index 68ad6297e..ed538f7e0 100644 --- a/Controllers/WinbondGamingKeyboardController/RGBController_WinbondGamingKeyboard.cpp +++ b/Controllers/WinbondGamingKeyboardController/RGBController_WinbondGamingKeyboard.cpp @@ -730,6 +730,8 @@ RGBController_WinbondGamingKeyboard::RGBController_WinbondGamingKeyboard(Winbond RGBController_WinbondGamingKeyboard::~RGBController_WinbondGamingKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/WootingKeyboardController/RGBController_WootingKeyboard.cpp b/Controllers/WootingKeyboardController/RGBController_WootingKeyboard.cpp index d5981abc8..17b904bc2 100644 --- a/Controllers/WootingKeyboardController/RGBController_WootingKeyboard.cpp +++ b/Controllers/WootingKeyboardController/RGBController_WootingKeyboard.cpp @@ -635,6 +635,8 @@ RGBController_WootingKeyboard::RGBController_WootingKeyboard(WootingKeyboardCont RGBController_WootingKeyboard::~RGBController_WootingKeyboard() { + Shutdown(); + delete controller; } diff --git a/Controllers/WushiController/RGBController_WushiL50USB.cpp b/Controllers/WushiController/RGBController_WushiL50USB.cpp index f6233db89..66d2bea21 100644 --- a/Controllers/WushiController/RGBController_WushiL50USB.cpp +++ b/Controllers/WushiController/RGBController_WushiL50USB.cpp @@ -91,6 +91,8 @@ RGBController_WushiL50USB::RGBController_WushiL50USB(WushiL50USBController* cont RGBController_WushiL50USB::~RGBController_WushiL50USB() { + Shutdown(); + delete controller; } diff --git a/Controllers/XPGSummonerKeyboardController/RGBController_XPGSummoner.cpp b/Controllers/XPGSummonerKeyboardController/RGBController_XPGSummoner.cpp index b7f7ff637..360c7632e 100644 --- a/Controllers/XPGSummonerKeyboardController/RGBController_XPGSummoner.cpp +++ b/Controllers/XPGSummonerKeyboardController/RGBController_XPGSummoner.cpp @@ -239,6 +239,8 @@ RGBController_XPGSummoner::RGBController_XPGSummoner(XPGSummonerController *cont \*---------------------------------------------------------*/ RGBController_XPGSummoner::~RGBController_XPGSummoner() { + Shutdown(); + delete controller; } diff --git a/Controllers/YeelightController/RGBController_Yeelight.cpp b/Controllers/YeelightController/RGBController_Yeelight.cpp index d31182178..6874079d9 100644 --- a/Controllers/YeelightController/RGBController_Yeelight.cpp +++ b/Controllers/YeelightController/RGBController_Yeelight.cpp @@ -65,6 +65,8 @@ RGBController_Yeelight::RGBController_Yeelight(YeelightController* controller_pt RGBController_Yeelight::~RGBController_Yeelight() { + Shutdown(); + delete controller; } diff --git a/Controllers/ZETKeyboardController/RGBController_ZETBladeOptical.cpp b/Controllers/ZETKeyboardController/RGBController_ZETBladeOptical.cpp index f8f693857..6d9ec49dd 100644 --- a/Controllers/ZETKeyboardController/RGBController_ZETBladeOptical.cpp +++ b/Controllers/ZETKeyboardController/RGBController_ZETBladeOptical.cpp @@ -432,6 +432,8 @@ RGBController_ZETBladeOptical::RGBController_ZETBladeOptical(ZETBladeOpticalCont RGBController_ZETBladeOptical::~RGBController_ZETBladeOptical() { + Shutdown(); + delete controller; } diff --git a/Controllers/ZalmanZSyncController/RGBController_ZalmanZSync.cpp b/Controllers/ZalmanZSyncController/RGBController_ZalmanZSync.cpp index 18d2d6d60..0f7cfcca9 100644 --- a/Controllers/ZalmanZSyncController/RGBController_ZalmanZSync.cpp +++ b/Controllers/ZalmanZSyncController/RGBController_ZalmanZSync.cpp @@ -40,6 +40,8 @@ RGBController_ZalmanZSync::RGBController_ZalmanZSync(ZalmanZSyncController* cont RGBController_ZalmanZSync::~RGBController_ZalmanZSync() { + Shutdown(); + delete controller; } diff --git a/Controllers/ZotacTuringGPUController/RGBController_ZotacTuringGPU.cpp b/Controllers/ZotacTuringGPUController/RGBController_ZotacTuringGPU.cpp index 8c0ce4430..879d98967 100644 --- a/Controllers/ZotacTuringGPUController/RGBController_ZotacTuringGPU.cpp +++ b/Controllers/ZotacTuringGPUController/RGBController_ZotacTuringGPU.cpp @@ -84,6 +84,8 @@ RGBController_ZotacTuringGPU::RGBController_ZotacTuringGPU(ZotacTuringGPUControl RGBController_ZotacTuringGPU::~RGBController_ZotacTuringGPU() { + Shutdown(); + delete controller; } diff --git a/Controllers/ZotacV2GPUController/RGBController_ZotacV2GPU.cpp b/Controllers/ZotacV2GPUController/RGBController_ZotacV2GPU.cpp index a43fcab1f..f7964bf65 100644 --- a/Controllers/ZotacV2GPUController/RGBController_ZotacV2GPU.cpp +++ b/Controllers/ZotacV2GPUController/RGBController_ZotacV2GPU.cpp @@ -341,6 +341,8 @@ RGBController_ZotacV2GPU::RGBController_ZotacV2GPU(ZotacV2GPUController* control RGBController_ZotacV2GPU::~RGBController_ZotacV2GPU() { + Shutdown(); + delete controller; } diff --git a/NetworkServer.cpp b/NetworkServer.cpp index f9ab4a545..1ca33f392 100644 --- a/NetworkServer.cpp +++ b/NetworkServer.cpp @@ -578,6 +578,11 @@ void NetworkServer::SetControllers(std::vector new_controllers) } } + /*-----------------------------------------------------*\ + | Unlock the controller IDs mutex | + \*-----------------------------------------------------*/ + controller_ids_mutex.unlock(); + /*-----------------------------------------------------*\ | Loop through the remaining threads in the old list | | and shut them down, their controller IDs are no | @@ -592,10 +597,9 @@ void NetworkServer::SetControllers(std::vector new_controllers) } /*-----------------------------------------------------*\ - | Unlock the mutexes | + | Unlock the controller threads mutex | \*-----------------------------------------------------*/ controller_threads_mutex.unlock(); - controller_ids_mutex.unlock(); /*-----------------------------------------------------*\ | Clear the controller list updating flag to resume the | @@ -2001,8 +2005,8 @@ void NetworkServer::SendReply_ControllerCount(SOCKET client_sock, unsigned int p controller_count = (unsigned int)controllers.size(); send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)data_buf, data_size, 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)data_buf, data_size, MSG_NOSIGNAL); send_in_progress.unlock(); delete[] data_buf; @@ -2064,8 +2068,8 @@ void NetworkServer::SendReply_ControllerData(SOCKET client_sock, unsigned int de | Send packet | \*-----------------------------------------------------*/ send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)reply_data, reply_size, 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)reply_data, reply_size, MSG_NOSIGNAL); send_in_progress.unlock(); /*-----------------------------------------------------*\ @@ -2085,8 +2089,8 @@ void NetworkServer::SendReply_ProtocolVersion(SOCKET client_sock) reply_data = OPENRGB_SDK_PROTOCOL_VERSION; send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)&reply_data, sizeof(unsigned int), 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)&reply_data, sizeof(unsigned int), MSG_NOSIGNAL); send_in_progress.unlock(); } @@ -2172,8 +2176,8 @@ void NetworkServer::SendReply_ProfileList(SOCKET client_sock) InitNetPacketHeader(&reply_hdr, 0, NET_PACKET_ID_PROFILEMANAGER_GET_PROFILE_LIST, reply_size); send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)reply_data, reply_size, 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)reply_data, reply_size, MSG_NOSIGNAL); send_in_progress.unlock(); } @@ -2273,8 +2277,8 @@ void NetworkServer::SendReply_PluginList(SOCKET client_sock) InitNetPacketHeader(&reply_hdr, 0, NET_PACKET_ID_PLUGINMANAGER_GET_PLUGIN_LIST, reply_size); send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)data_buf, reply_size, 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)data_buf, reply_size, MSG_NOSIGNAL); send_in_progress.unlock(); delete [] data_buf; @@ -2287,9 +2291,9 @@ void NetworkServer::SendReply_PluginSpecific(SOCKET client_sock, unsigned int pk InitNetPacketHeader(&reply_hdr, 0, NET_PACKET_ID_PLUGINMANAGER_PLUGIN_SPECIFIC, data_size + sizeof(pkt_id)); send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)&pkt_id, sizeof(pkt_id), 0); - send(client_sock, (const char *)data, data_size, 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)&pkt_id, sizeof(pkt_id), MSG_NOSIGNAL); + send(client_sock, (const char *)data, data_size, MSG_NOSIGNAL); send_in_progress.unlock(); delete [] data; @@ -2304,7 +2308,7 @@ void NetworkServer::SendRequest_DetectionCompleted(SOCKET client_sock, unsigned InitNetPacketHeader(&pkt_hdr, 0, NET_PACKET_ID_DETECTION_COMPLETE, 0); send_in_progress.lock(); - send(client_sock, (char *)&pkt_hdr, sizeof(NetPacketHeader), 0); + send(client_sock, (char *)&pkt_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); send_in_progress.unlock(); } } @@ -2341,8 +2345,8 @@ void NetworkServer::SendRequest_DetectionProgress(SOCKET client_sock, unsigned i InitNetPacketHeader(&reply_hdr, 0, NET_PACKET_ID_DETECTION_PROGRESS_CHANGED, data_size); send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)data_buf, data_size, 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)data_buf, data_size, MSG_NOSIGNAL); send_in_progress.unlock(); delete [] data_buf; @@ -2358,7 +2362,7 @@ void NetworkServer::SendRequest_DetectionStarted(SOCKET client_sock, unsigned in InitNetPacketHeader(&pkt_hdr, 0, NET_PACKET_ID_DETECTION_STARTED, 0); send_in_progress.lock(); - send(client_sock, (char *)&pkt_hdr, sizeof(NetPacketHeader), 0); + send(client_sock, (char *)&pkt_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); send_in_progress.unlock(); } } @@ -2370,7 +2374,7 @@ void NetworkServer::SendRequest_DeviceListChanged(SOCKET client_sock) InitNetPacketHeader(&pkt_hdr, 0, NET_PACKET_ID_DEVICE_LIST_UPDATED, 0); send_in_progress.lock(); - send(client_sock, (char *)&pkt_hdr, sizeof(NetPacketHeader), 0); + send(client_sock, (char *)&pkt_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); send_in_progress.unlock(); } @@ -2512,8 +2516,8 @@ void NetworkServer::SendRequest_RGBController_SignalUpdate(RGBController * contr | Send packet | \*-----------------------------------------*/ send_in_progress.lock(); - send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), 0); - send(client_sock, (const char *)reply_data, reply_size, 0); + send(client_sock, (const char *)&reply_hdr, sizeof(NetPacketHeader), MSG_NOSIGNAL); + send(client_sock, (const char *)reply_data, reply_size, MSG_NOSIGNAL); send_in_progress.unlock(); /*-----------------------------------------*\ diff --git a/RGBController/RGBController.cpp b/RGBController/RGBController.cpp index ef7710ca5..fd7e86717 100644 --- a/RGBController/RGBController.cpp +++ b/RGBController/RGBController.cpp @@ -12,6 +12,7 @@ #include #include "nlohmann/json.hpp" +#include "LogManager.h" #include "RGBController.h" #include "StringUtils.h" @@ -139,11 +140,16 @@ RGBController::RGBController() RGBController::~RGBController() { /*-----------------------------------------------------*\ - | Stop device thread | + | Stop device thread if not already stopped | \*-----------------------------------------------------*/ - DeviceThreadRunning = false; - DeviceCallThread->join(); - delete DeviceCallThread; + if(DeviceThreadRunning) + { + LOG_ERROR("[RGBController] %s: Device thread still active in base class destructor, ensure Shutdown() was called from inherited destructor", name.c_str()); + + DeviceThreadRunning = false; + DeviceCallThread->join(); + delete DeviceCallThread; + } /*-----------------------------------------------------*\ | Clear member vectors | @@ -3582,6 +3588,21 @@ void RGBController::SignalUpdate(unsigned int update_reason) /*---------------------------------------------------------*\ | Device Update Functions | \*---------------------------------------------------------*/ +void RGBController::Shutdown() +{ + /*-----------------------------------------------------*\ + | Stop device thread | + \*-----------------------------------------------------*/ + DeviceThreadRunning = false; + DeviceCallThread->join(); + delete DeviceCallThread; + + /*-----------------------------------------------------*\ + | Lock the access mutex | + \*-----------------------------------------------------*/ + AccessMutex.lock(); +} + void RGBController::UpdateLEDs() { CallFlag_UpdateLEDs = true; diff --git a/RGBController/RGBController.h b/RGBController/RGBController.h index 3d2839526..c3597217d 100644 --- a/RGBController/RGBController.h +++ b/RGBController/RGBController.h @@ -665,6 +665,8 @@ public: /*-----------------------------------------------------*\ | Device Update Functions | \*-----------------------------------------------------*/ + void Shutdown(); + void UpdateLEDs(); void UpdateZoneLEDs(int zone); void UpdateSingleLED(int led); diff --git a/RGBController/RGBController_Dummy.cpp b/RGBController/RGBController_Dummy.cpp index 8d33e67aa..a4b7ac05c 100644 --- a/RGBController/RGBController_Dummy.cpp +++ b/RGBController/RGBController_Dummy.cpp @@ -37,6 +37,11 @@ RGBController_Dummy::RGBController_Dummy() } +RGBController_Dummy::~RGBController_Dummy() +{ + Shutdown(); +} + void RGBController_Dummy::SetupZones() { diff --git a/RGBController/RGBController_Dummy.h b/RGBController/RGBController_Dummy.h index 23becad6f..4f45ffa59 100644 --- a/RGBController/RGBController_Dummy.h +++ b/RGBController/RGBController_Dummy.h @@ -18,6 +18,7 @@ class RGBController_Dummy : public RGBController { public: RGBController_Dummy(); + ~RGBController_Dummy(); void SetupZones(); diff --git a/RGBController/RGBController_Network.cpp b/RGBController/RGBController_Network.cpp index f017128dc..39f44a388 100644 --- a/RGBController/RGBController_Network.cpp +++ b/RGBController/RGBController_Network.cpp @@ -20,6 +20,11 @@ RGBController_Network::RGBController_Network(NetworkClient * client_ptr, unsigne dev_id = dev_id_val; } +RGBController_Network::~RGBController_Network() +{ + Shutdown(); +} + unsigned int RGBController_Network::GetID() { return(dev_id); diff --git a/RGBController/RGBController_Network.h b/RGBController/RGBController_Network.h index 61491abbb..a66505485 100644 --- a/RGBController/RGBController_Network.h +++ b/RGBController/RGBController_Network.h @@ -19,6 +19,7 @@ class RGBController_Network : public RGBController { public: RGBController_Network(NetworkClient * client_ptr, unsigned int dev_idx_val); + ~RGBController_Network(); unsigned int GetID();