fixed a bug that caused segfault with -O3

This commit is contained in:
Linus Dierheimer
2021-02-19 10:07:00 +01:00
parent 41120ef582
commit c5a9b9d428
4 changed files with 14 additions and 14 deletions
+3 -3
View File
@@ -8,7 +8,7 @@ void ffPrintBattery(FFstate* state)
if(fullFile == NULL)
return;
uint32_t full;
scanned = fscanf(fullFile, "%lu", &full);
scanned = fscanf(fullFile, "%u", &full);
if(scanned != 1)
return;
fclose(fullFile);
@@ -17,7 +17,7 @@ void ffPrintBattery(FFstate* state)
if(nowFile == NULL)
return;
uint32_t now;
scanned = fscanf(nowFile, "%lu", &now);
scanned = fscanf(nowFile, "%u", &now);
if(scanned != 1)
return;
fclose(nowFile);
@@ -34,5 +34,5 @@ void ffPrintBattery(FFstate* state)
uint32_t percentage = (now / (double) full) * 100;
ffPrintLogoAndKey(state, "Battery");
printf("%lu%% [%s]\n", percentage, status);
printf("%u%% [%s]\n", percentage, status);
}
+1 -1
View File
@@ -13,7 +13,7 @@ void ffPrintCPU(FFstate* state)
char cores[256];
uint32_t hz;
sscanf(frequency, "%ul", &hz); //in KHz
sscanf(frequency, "%u", &hz); //in KHz
hz /= 1000; //to MHz
double ghz = (double) hz / 1000.0; //to GHz
+1 -1
View File
@@ -20,5 +20,5 @@ void ffPrintDisk(FFstate* state)
ffPrintLogoAndKey(state, "Disk (/)");
printf("%luGB / %luGB (%lu%%)\n", used, total, percentage);
printf("%uGB / %uGB (%u%%)\n", used, total, percentage);
}
+9 -9
View File
@@ -5,24 +5,24 @@ void ffPrintMemory(FFstate* state)
{
ffPrintLogoAndKey(state, "Memory");
FILE *meminfo = fopen("/proc/meminfo", "r");
FILE* meminfo = fopen("/proc/meminfo", "r");
if(meminfo == NULL) {
printf("[Error opening /proc/meminfo\n");
return;
}
char *line = NULL;
char* line = NULL;
size_t len;
uint32_t total, shared, memfree, buffers, cached, reclaimable;
while (getline(&line, &len, meminfo) != -1) {
sscanf(line, "MemTotal: %lu", &total);
sscanf(line, "Shmem: %lu", &shared);
sscanf(line, "MemFree: %lu", &memfree);
sscanf(line, "Buffers: %lu", &buffers);
sscanf(line, "Cached: %lu", &cached);
sscanf(line, "SReclaimable: %lu", &reclaimable);
sscanf(line, "MemTotal: %u", &total);
sscanf(line, "Shmem: %u", &shared);
sscanf(line, "MemFree: %u", &memfree);
sscanf(line, "Buffers: %u", &buffers);
sscanf(line, "Cached: %u", &cached);
sscanf(line, "SReclaimable: %u", &reclaimable);
}
free(line);
@@ -32,5 +32,5 @@ void ffPrintMemory(FFstate* state)
uint32_t total_mem = total / 1024;
uint8_t percentage = (uint8_t) ((used_mem / (double) total_mem) * 100);
printf("%luMiB / %luMiB (%u%%)\n", used_mem, total_mem, percentage);
printf("%uMiB / %uMiB (%u%%)\n", used_mem, total_mem, percentage);
}