Move RGBController base destructor functionality into RGBController::Shutdown() so that update thread can be stopped before deleting the controller. Shutdown() must be called in every RGBController implementation before deleting the controller. Also some fixes to the NetworkServer to avoid deadlocking and disconnect issues

This commit is contained in:
Adam Honse
2026-02-02 17:10:37 -06:00
parent 5176f7ff7d
commit 3b0c85592e
331 changed files with 790 additions and 37 deletions

View File

@@ -257,6 +257,8 @@ RGBController_QMKOpenRGBRev9::RGBController_QMKOpenRGBRev9(QMKOpenRGBRev9Control
RGBController_QMKOpenRGBRev9::~RGBController_QMKOpenRGBRev9()
{
Shutdown();
delete controller;
}

View File

@@ -259,6 +259,8 @@ RGBController_QMKOpenRGBRevB::RGBController_QMKOpenRGBRevB(QMKOpenRGBRevBControl
RGBController_QMKOpenRGBRevB::~RGBController_QMKOpenRGBRevB()
{
Shutdown();
delete controller;
}

View File

@@ -258,6 +258,8 @@ RGBController_QMKOpenRGBRevD::RGBController_QMKOpenRGBRevD(QMKOpenRGBRevDControl
RGBController_QMKOpenRGBRevD::~RGBController_QMKOpenRGBRevD()
{
Shutdown();
delete controller;
}

View File

@@ -274,6 +274,8 @@ RGBController_QMKOpenRGBRevE::RGBController_QMKOpenRGBRevE(QMKOpenRGBRevDControl
RGBController_QMKOpenRGBRevE::~RGBController_QMKOpenRGBRevE()
{
Shutdown();
delete controller;
}

View File

@@ -158,6 +158,8 @@ RGBController_QMKVialRGB::RGBController_QMKVialRGB(QMKVialRGBController* control
RGBController_QMKVialRGB::~RGBController_QMKVialRGB()
{
Shutdown();
delete controller;
}