mirror of
https://github.com/CalcProgrammer1/OpenRGB.git
synced 2026-05-18 11:35:21 -04:00
Add u16string to string conversion function for CMKeyboardV2Controller.cpp
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
#include <string>
|
||||
#include "CMKeyboardV2Controller.h"
|
||||
#include "LogManager.h"
|
||||
#include "StringUtils.h"
|
||||
|
||||
CMKeyboardV2Controller::CMKeyboardV2Controller(hid_device* dev_handle, hid_device_info* dev_info) : CMKeyboardAbstractController(dev_handle, dev_info)
|
||||
{
|
||||
@@ -98,7 +99,7 @@ std::string CMKeyboardV2Controller::_GetFirmwareVersion()
|
||||
}
|
||||
|
||||
std::u16string usFirmwareVersion(reinterpret_cast<const char16_t*>(cVersionStr+8));
|
||||
std::string sFirmwareVersion(usFirmwareVersion.begin(), usFirmwareVersion.end());
|
||||
std::string sFirmwareVersion(StringUtils::u16string_to_string(usFirmwareVersion));
|
||||
|
||||
LOG_VERBOSE("[%s] GetFirmwareVersion(): [%s]", m_deviceName.c_str(), sFirmwareVersion.c_str());
|
||||
|
||||
|
||||
@@ -57,6 +57,13 @@ std::string StringUtils::wstring_to_string(const std::wstring wstring)
|
||||
return(converter.to_bytes(wstring));
|
||||
}
|
||||
|
||||
std::string StringUtils::u16string_to_string(const std::u16string wstring)
|
||||
{
|
||||
std::wstring_convert<std::codecvt_utf8_utf16<char16_t>,char16_t> converter;
|
||||
|
||||
return(converter.to_bytes(wstring));
|
||||
}
|
||||
|
||||
const std::string StringUtils::remove_null_terminating_chars(std::string input)
|
||||
{
|
||||
while (!input.empty() && input.back() == 0)
|
||||
|
||||
@@ -16,5 +16,6 @@ class StringUtils
|
||||
public:
|
||||
static const char* wchar_to_char(const wchar_t* pwchar);
|
||||
static std::string wstring_to_string(const std::wstring wstring);
|
||||
static std::string u16string_to_string(const std::u16string wstring);
|
||||
static const std::string remove_null_terminating_chars(std::string input);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user