SysArchMeter: avoid static variable

This commit is contained in:
Christian Göttsche 2021-03-02 16:37:11 +01:00
parent dc8124e1a1
commit a40347e85b
1 changed files with 4 additions and 5 deletions

View File

@ -62,18 +62,17 @@ static void parseOSRelease(char* buffer, size_t bufferLen) {
} }
static void SysArchMeter_updateValues(ATTR_UNUSED Meter* this, char* buffer, size_t size) { static void SysArchMeter_updateValues(ATTR_UNUSED Meter* this, char* buffer, size_t size) {
static struct utsname uname_info;
static char savedString[ static char savedString[
/* uname structure fields - manpages recommend sizeof */ /* uname structure fields - manpages recommend sizeof */
sizeof(uname_info.sysname) + sizeof(((struct utsname*)0)->sysname) +
sizeof(uname_info.release) + sizeof(((struct utsname*)0)->release) +
sizeof(uname_info.machine) + sizeof(((struct utsname*)0)->machine) +
16/*markup*/ + 16/*markup*/ +
128/*distro*/] = {'\0'}; 128/*distro*/] = {'\0'};
static bool loaded_data = false; static bool loaded_data = false;
if (!loaded_data) { if (!loaded_data) {
struct utsname uname_info;
int uname_result = uname(&uname_info); int uname_result = uname(&uname_info);
char distro[128]; char distro[128];