mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-11-06 13:14:21 +01:00
util: rename unicode helper function names
This commit is contained in:
@@ -86,7 +86,7 @@ const char* ffDetectBatteryImpl(FFinstance* instance, FFlist* results)
|
||||
bqi.InformationLevel = BatteryDeviceName;
|
||||
wchar_t name[64];
|
||||
if(DeviceIoControl(hBattery, IOCTL_BATTERY_QUERY_INFORMATION, &bqi, sizeof(bqi), name, sizeof(name), &dwOut, NULL))
|
||||
ffWcharToUtf8(name, &battery->modelName);
|
||||
ffStrbufSetWS(&battery->modelName, name);
|
||||
}
|
||||
|
||||
{
|
||||
@@ -94,7 +94,7 @@ const char* ffDetectBatteryImpl(FFinstance* instance, FFlist* results)
|
||||
bqi.InformationLevel = BatteryManufactureName;
|
||||
wchar_t name[64];
|
||||
if(DeviceIoControl(hBattery, IOCTL_BATTERY_QUERY_INFORMATION, &bqi, sizeof(bqi), name, sizeof(name), &dwOut, NULL))
|
||||
ffWcharToUtf8(name, &battery->manufacturer);
|
||||
ffStrbufSetWS(&battery->manufacturer, name);
|
||||
}
|
||||
|
||||
battery->temperature = 0.0/0.0;
|
||||
|
||||
@@ -15,7 +15,7 @@ void ffDetectFontImpl(const FFinstance* instance, FFFontResult* result)
|
||||
|
||||
for(uint32_t i = 0; i < sizeof(fonts) / sizeof(fonts[0]); ++i)
|
||||
{
|
||||
ffWcharToUtf8(fonts[i]->lfFaceName, &result->fonts[i]);
|
||||
ffStrbufSetWS(&result->fonts[i], fonts[i]->lfFaceName);
|
||||
if(fonts[i]->lfHeight < 0)
|
||||
ffStrbufAppendF(&result->fonts[i], " (%dpt)", (int)-fonts[i]->lfHeight);
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ static const char* detectWithDxgi(FFlist* gpus)
|
||||
ffStrbufInit(&gpu->vendor);
|
||||
|
||||
ffStrbufInit(&gpu->name);
|
||||
ffWcharToUtf8(desc.Description, &gpu->name);
|
||||
ffStrbufSetWS(&gpu->name, desc.Description);
|
||||
|
||||
ffStrbufInit(&gpu->driver);
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ static const char* getOsNameByWinbrand(FFstrbuf* osName)
|
||||
return "GetProcAddress(BrandingFormatString) failed";
|
||||
|
||||
const wchar_t* rawName = BrandingFormatString(L"%WINDOWS_LONG%");
|
||||
ffWcharToUtf8(rawName, osName);
|
||||
ffStrbufSetWS(osName, rawName);
|
||||
GlobalFree((HGLOBAL)rawName);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -42,8 +42,8 @@ void ffDetectUsers(FFlist* users, FFstrbuf* error)
|
||||
if(session->State != WTSActive)
|
||||
continue;
|
||||
|
||||
FF_STRBUF_AUTO_DESTROY domainName = ffStrbufFromWchar(session->pDomainName);
|
||||
FF_STRBUF_AUTO_DESTROY userName = ffStrbufFromWchar(session->pUserName);
|
||||
FF_STRBUF_AUTO_DESTROY domainName = ffStrbufCreateWS(session->pDomainName);
|
||||
FF_STRBUF_AUTO_DESTROY userName = ffStrbufCreateWS(session->pUserName);
|
||||
|
||||
ffStrbufInitF((FFstrbuf*)ffListAdd(users), "%s\\%s", domainName.chars, userName.chars);
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ bool ffRegOpenKeyForRead(HKEY hKey, const wchar_t* subKeyW, HKEY* result, FFstrb
|
||||
{
|
||||
if(error)
|
||||
{
|
||||
FF_STRBUF_AUTO_DESTROY subKeyA = ffStrbufFromWchar(subKeyW);
|
||||
FF_STRBUF_AUTO_DESTROY subKeyA = ffStrbufCreateWS(subKeyW);
|
||||
ffStrbufAppendF(error, "RegOpenKeyExW(%s\\%s) failed", hKey2Str(hKey), subKeyA.chars);
|
||||
}
|
||||
return false;
|
||||
@@ -43,7 +43,7 @@ bool ffRegReadStrbuf(HKEY hKey, const wchar_t* valueNameW, FFstrbuf* result, FFs
|
||||
{
|
||||
if(!valueNameW)
|
||||
valueNameW = L"(default)";
|
||||
FF_STRBUF_AUTO_DESTROY valueNameA = ffStrbufFromWchar(valueNameW);
|
||||
FF_STRBUF_AUTO_DESTROY valueNameA = ffStrbufCreateWS(valueNameW);
|
||||
ffStrbufAppendF(error, "RegGetValueA(%s, NULL, RRF_RT_REG_SZ) failed", valueNameA.chars);
|
||||
}
|
||||
return false;
|
||||
@@ -55,12 +55,12 @@ bool ffRegReadStrbuf(HKEY hKey, const wchar_t* valueNameW, FFstrbuf* result, FFs
|
||||
{
|
||||
if(!valueNameW)
|
||||
valueNameW = L"(default)";
|
||||
FF_STRBUF_AUTO_DESTROY valueNameA = ffStrbufFromWchar(valueNameW);
|
||||
FF_STRBUF_AUTO_DESTROY valueNameA = ffStrbufCreateWS(valueNameW);
|
||||
ffStrbufAppendF(error, "RegGetValueA(%s, result, RRF_RT_REG_SZ) failed", valueNameA.chars);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
ffWcharToUtf8(resultW, result);
|
||||
ffStrbufSetWS(result, resultW);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -73,7 +73,7 @@ bool ffRegReadUint(HKEY hKey, const wchar_t* valueNameW, uint32_t* result, FFstr
|
||||
{
|
||||
if(!valueNameW)
|
||||
valueNameW = L"(default)";
|
||||
FF_STRBUF_AUTO_DESTROY valueNameA = ffStrbufFromWchar(valueNameW);
|
||||
FF_STRBUF_AUTO_DESTROY valueNameA = ffStrbufCreateWS(valueNameW);
|
||||
ffStrbufAppendF(error, "RegGetValueA(%s, result, RRF_RT_DWORD) failed", valueNameA.chars);
|
||||
}
|
||||
return false;
|
||||
|
||||
@@ -1,33 +1,31 @@
|
||||
#include "unicode.h"
|
||||
|
||||
void ffWcharToUtf8(const wchar_t* input, FFstrbuf* result)
|
||||
void ffStrbufSetNWS(FFstrbuf* result, uint32_t length, const wchar_t* source)
|
||||
{
|
||||
int len = (int)wcslen(input);
|
||||
if(len <= 0)
|
||||
if(!length)
|
||||
{
|
||||
ffStrbufClear(result);
|
||||
return;
|
||||
}
|
||||
|
||||
int size_needed = WideCharToMultiByte(CP_UTF8, 0, input, len, NULL, 0, NULL, NULL);
|
||||
int size_needed = WideCharToMultiByte(CP_UTF8, 0, source, (int)length, NULL, 0, NULL, NULL);
|
||||
ffStrbufEnsureFree(result, (uint32_t)size_needed);
|
||||
WideCharToMultiByte(CP_UTF8, 0, input, len, result->chars, size_needed, NULL, NULL);
|
||||
WideCharToMultiByte(CP_UTF8, 0, source, (int)length, result->chars, size_needed, NULL, NULL);
|
||||
result->length = (uint32_t)size_needed;
|
||||
result->chars[size_needed] = '\0';
|
||||
}
|
||||
|
||||
FFstrbuf ffStrbufFromWchar(const wchar_t* input)
|
||||
FFstrbuf ffStrbufCreateNWS(uint32_t length, const wchar_t* source)
|
||||
{
|
||||
FFstrbuf result;
|
||||
|
||||
int len = input ? (int)wcslen(input) : 0;
|
||||
if(len <= 0)
|
||||
if(length == 0)
|
||||
ffStrbufInit(&result);
|
||||
else
|
||||
{
|
||||
int size_needed = WideCharToMultiByte(CP_UTF8, 0, input, len, NULL, 0, NULL, NULL);
|
||||
int size_needed = WideCharToMultiByte(CP_UTF8, 0, source, (int)length, NULL, 0, NULL, NULL);
|
||||
ffStrbufInitA(&result, (uint32_t)size_needed);
|
||||
WideCharToMultiByte(CP_UTF8, 0, input, len, result.chars, size_needed, NULL, NULL);
|
||||
WideCharToMultiByte(CP_UTF8, 0, source, (int)length, result.chars, size_needed, NULL, NULL);
|
||||
result.length = (uint32_t)size_needed;
|
||||
result.chars[size_needed] = '\0';
|
||||
}
|
||||
|
||||
@@ -4,8 +4,18 @@
|
||||
#define FASTFETCH_INCLUDED_UNICODE_H
|
||||
|
||||
#include "fastfetch.h"
|
||||
#include <wchar.h>
|
||||
|
||||
void ffWcharToUtf8(const wchar_t* input, FFstrbuf* result);
|
||||
FFstrbuf ffStrbufFromWchar(const wchar_t* input);
|
||||
void ffStrbufSetNWS(FFstrbuf* result, uint32_t length, const wchar_t* source);
|
||||
static inline void ffStrbufSetWS(FFstrbuf* result, const wchar_t* source)
|
||||
{
|
||||
return ffStrbufSetNWS(result, (uint32_t)wcslen(source), source);
|
||||
}
|
||||
|
||||
FFstrbuf ffStrbufCreateNWS(uint32_t length, const wchar_t* source);
|
||||
static inline FFstrbuf ffStrbufCreateWS(const wchar_t* source)
|
||||
{
|
||||
return ffStrbufCreateNWS((uint32_t)wcslen(source), source);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user