diff --git a/src/detection/cpu/cpu_linux.c b/src/detection/cpu/cpu_linux.c index 1fd61ce37..99ce8d5b9 100644 --- a/src/detection/cpu/cpu_linux.c +++ b/src/detection/cpu/cpu_linux.c @@ -2,6 +2,7 @@ #include "common/io/io.h" #include "common/properties.h" #include "detection/temps/temps_linux.h" +#include "util/mallocHelper.h" #include #include @@ -9,11 +10,11 @@ static const char* parseCpuInfo(FFCPUResult* cpu, FFstrbuf* physicalCoresBuffer, FFstrbuf* cpuMHz, FFstrbuf* cpuIsa, FFstrbuf* cpuUarch) { - FILE* cpuinfo = fopen("/proc/cpuinfo", "r"); + FF_AUTO_CLOSE_FILE FILE* cpuinfo = fopen("/proc/cpuinfo", "r"); if(cpuinfo == NULL) return "fopen(\"/proc/cpuinfo\", \"r\") failed"; - char* line = NULL; + FF_AUTO_FREE char* line = NULL; size_t len = 0; while(getline(&line, &len, cpuinfo) != -1) @@ -34,11 +35,6 @@ static const char* parseCpuInfo(FFCPUResult* cpu, FFstrbuf* physicalCoresBuffer, ); } - if(line != NULL) - free(line); - - fclose(cpuinfo); - return NULL; }