mirror of
https://github.com/CalcProgrammer1/OpenRGB.git
synced 2026-04-05 06:34:25 -04:00
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:
@@ -107,6 +107,8 @@ RGBController_LogitechG203L::RGBController_LogitechG203L(LogitechG203LController
|
||||
|
||||
RGBController_LogitechG203L::~RGBController_LogitechG203L()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -106,6 +106,8 @@ RGBController_LogitechG213::RGBController_LogitechG213(LogitechG213Controller* c
|
||||
|
||||
RGBController_LogitechG213::~RGBController_LogitechG213()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -19,6 +19,7 @@ class RGBController_LogitechG560 : public RGBController
|
||||
{
|
||||
public:
|
||||
RGBController_LogitechG560(LogitechG560Controller* controller_ptr);
|
||||
~RGBController_LogitechG560();
|
||||
|
||||
void SetupZones();
|
||||
|
||||
|
||||
@@ -64,6 +64,8 @@ RGBController_LogitechG600::RGBController_LogitechG600(LogitechG600Controller* c
|
||||
|
||||
RGBController_LogitechG600::~RGBController_LogitechG600()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -241,6 +241,8 @@ RGBController_LogitechG810::RGBController_LogitechG810(LogitechG810Controller* c
|
||||
|
||||
RGBController_LogitechG810::~RGBController_LogitechG810()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -246,6 +246,8 @@ RGBController_LogitechG815::RGBController_LogitechG815(LogitechG815Controller* c
|
||||
|
||||
RGBController_LogitechG815::~RGBController_LogitechG815()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -242,6 +242,8 @@ RGBController_LogitechG910::RGBController_LogitechG910(LogitechG910Controller* c
|
||||
|
||||
RGBController_LogitechG910::~RGBController_LogitechG910()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -381,6 +381,8 @@ RGBController_LogitechG915::RGBController_LogitechG915(LogitechG915Controller* c
|
||||
|
||||
RGBController_LogitechG915::~RGBController_LogitechG915()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -19,6 +19,7 @@ class RGBController_LogitechG933 : public RGBController
|
||||
{
|
||||
public:
|
||||
RGBController_LogitechG933(LogitechG933Controller* controller_ptr);
|
||||
~RGBController_LogitechG933();
|
||||
|
||||
void SetupZones();
|
||||
|
||||
|
||||
@@ -85,6 +85,8 @@ RGBController_LogitechGLightsync::RGBController_LogitechGLightsync(LogitechGLigh
|
||||
|
||||
RGBController_LogitechGLightsync::~RGBController_LogitechGLightsync()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -85,6 +85,8 @@ RGBController_LogitechGLightsync1zone::RGBController_LogitechGLightsync1zone(Log
|
||||
|
||||
RGBController_LogitechGLightsync1zone::~RGBController_LogitechGLightsync1zone()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -79,6 +79,8 @@ RGBController_LogitechGPowerPlay::RGBController_LogitechGPowerPlay(LogitechGLigh
|
||||
|
||||
RGBController_LogitechGPowerPlay::~RGBController_LogitechGPowerPlay()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -218,6 +218,8 @@ RGBController_LogitechGProKeyboard::RGBController_LogitechGProKeyboard(LogitechG
|
||||
|
||||
RGBController_LogitechGProKeyboard::~RGBController_LogitechGProKeyboard()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -159,6 +159,8 @@ RGBController_LogitechLightspeed::RGBController_LogitechLightspeed(LogitechLight
|
||||
|
||||
RGBController_LogitechLightspeed::~RGBController_LogitechLightspeed()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
@@ -47,6 +47,8 @@ RGBController_LogitechX56::RGBController_LogitechX56(LogitechX56Controller* cont
|
||||
|
||||
RGBController_LogitechX56::~RGBController_LogitechX56()
|
||||
{
|
||||
Shutdown();
|
||||
|
||||
delete controller;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user