fix reading procfs files

old-commit-hash: 6f21993915
commatwo_master
Comma Device 4 years ago
parent 5dddcac027
commit 6f27d70605
  1. 12
      selfdrive/common/util.cc

@ -1,4 +1,5 @@
#include <errno.h>
#include <sstream>
#include "common/util.h"
@ -51,11 +52,20 @@ std::string read_file(const std::string& fn) {
std::ifstream ifs(fn, std::ios::binary | std::ios::ate);
if (ifs) {
std::ifstream::pos_type pos = ifs.tellg();
if (pos != std::ios::beg) {
std::string result;
result.resize(pos);
ifs.seekg(0, std::ios::beg);
ifs.read(result.data(), pos);
if (ifs) return result;
if (ifs) {
return result;
}
} else {
// handle files created on read, e.g. procfs
std::stringstream buffer;
buffer << ifs.rdbuf();
return buffer.str();
}
}
return "";
}

Loading…
Cancel
Save