mirror of
https://github.com/CalcProgrammer1/OpenRGB.git
synced 2026-07-08 04:14:50 -04:00
[next] Fix memory leak in serial port detection
This commit is contained in:
@@ -52,7 +52,7 @@ DetectedControllers DetectJGINYUEInternalUSBV2Controller(hid_device_info* info,c
|
||||
if(dev)
|
||||
{
|
||||
serial_port *port = nullptr;
|
||||
std::vector<std::string*> serial_ports = find_usb_serial_port(JGINYUE_VID_V2, JGINYUE_MOTHERBOARD_PID_V2);
|
||||
std::vector<std::string> serial_ports = find_usb_serial_port(JGINYUE_VID_V2, JGINYUE_MOTHERBOARD_PID_V2);
|
||||
|
||||
if(serial_ports.size() == 0)
|
||||
{
|
||||
@@ -66,22 +66,14 @@ DetectedControllers DetectJGINYUEInternalUSBV2Controller(hid_device_info* info,c
|
||||
if(serial_ports.size() >= 1)
|
||||
{
|
||||
port = new serial_port();
|
||||
if(!port->serial_open(serial_ports[0]->c_str(), 115200))
|
||||
if(!port->serial_open(serial_ports[0].c_str(), 115200))
|
||||
{
|
||||
LOG_WARNING("[JGINYUEInternalUSBV2ControllerDetect] Failed to open serial port %s - Direct mode will be unavailable. HID modes will still work.", serial_ports[0]->c_str());
|
||||
LOG_WARNING("[JGINYUEInternalUSBV2ControllerDetect] Failed to open serial port %s - Direct mode will be unavailable. HID modes will still work.", serial_ports[0].c_str());
|
||||
delete port;
|
||||
port = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
/*---------------------------------------------*\
|
||||
| Clean up serial port string vector |
|
||||
\*---------------------------------------------*/
|
||||
for(std::string* str_ptr : serial_ports)
|
||||
{
|
||||
delete str_ptr;
|
||||
}
|
||||
|
||||
JGINYUEInternalUSBV2Controller * controller = new JGINYUEInternalUSBV2Controller(dev, info->path, port);
|
||||
RGBController_JGINYUEInternalUSBV2 * rgb_controller = new RGBController_JGINYUEInternalUSBV2(controller);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user