get rid of read to str
This commit is contained in:
@@ -16,7 +16,8 @@ void detectHwmon(cpuSensors* target, std::string pci) {
|
||||
log(LOG::ERR, "cpu::detectHwmon", "NO CPU HWMON KERNEL MODULE DETECTED");
|
||||
return;
|
||||
}
|
||||
target->zenpower = readFileToStr((target->hwmon + "/name"), 128) == "zenpower";
|
||||
|
||||
target->zenpower = false; // we were using readFileToStr to figure this out, we dont f/w it anymore, find another way (see if hwmon/in1_input exists?)
|
||||
log(LOG::INF, "cpu::detectHwmon", "Detected module \"{}\" in path \"{}\"", target->zenpower ? "zenpower" : "k10temp", target->hwmon);
|
||||
}
|
||||
|
||||
|
||||
@@ -28,9 +28,10 @@ void sys::getTimeDate(TimeDate* td) {
|
||||
}
|
||||
|
||||
void sys::getRam(Memory* mem) {
|
||||
auto content = readFileToStr("/proc/meminfo", 128); // file is longer than that but its all we need
|
||||
mem->free = getVal("MemAvailable:", content);
|
||||
mem->total = getVal("MemTotal:", content);
|
||||
static char buf[128]; // file is longer but we only need first 128 chars
|
||||
readFile("/proc/meminfo", buf, sizeof(buf));
|
||||
mem->free = getVal("MemAvailable:", std::string_view(buf));
|
||||
mem->total = getVal("MemTotal:", std::string_view(buf));
|
||||
mem->used = mem->total - mem->free;
|
||||
}
|
||||
|
||||
|
||||
@@ -59,15 +59,7 @@ ssize_t readFile(std::string path, char* buffer, size_t maxlen) {
|
||||
return readFile(path.c_str(), buffer, maxlen);
|
||||
}
|
||||
|
||||
std::string readFileToStr(std::string path, size_t trim) {
|
||||
char* buf = new char[trim + 2];
|
||||
ssize_t len = readFile(path, buf, trim + 2);
|
||||
std::string out(buf);
|
||||
delete[] buf;
|
||||
if (!len) return "0";
|
||||
return out.substr(0, len - 1);
|
||||
}
|
||||
|
||||
/* finds first dir in path and returns it*/
|
||||
std::string getFirstDir(std::string_view path) {
|
||||
for (const auto& entry : std::filesystem::directory_iterator(path))
|
||||
return entry.path();
|
||||
|
||||
Reference in New Issue
Block a user