Snap for 6777077 from 3eec5b9bee837e8a5454682902978ecfe5c1866d to rvc-qpr1-release
Change-Id: Ifaafd0443f4f3246a60bc149baee5b6789873bf9
diff --git a/transport/ServiceManagement.cpp b/transport/ServiceManagement.cpp
index d7faa6d..7de5c78 100644
--- a/transport/ServiceManagement.cpp
+++ b/transport/ServiceManagement.cpp
@@ -87,7 +87,7 @@
static std::string binaryName() {
std::ifstream ifs("/proc/self/cmdline");
std::string cmdline;
- if (!ifs.is_open()) {
+ if (!ifs) {
return "";
}
ifs >> cmdline;
@@ -106,7 +106,7 @@
return packageAndVersion.substr(0, at);
}
-static void tryShortenProcessName(const std::string& descriptor) {
+__attribute__((noinline)) static void tryShortenProcessName(const std::string& descriptor) {
const static std::string kTasks = "/proc/self/task/";
// make sure that this binary name is in the same package
@@ -135,17 +135,17 @@
if (dp->d_name[0] == '.') continue;
std::fstream fs(kTasks + dp->d_name + "/comm");
- if (!fs.is_open()) {
+ if (!fs) {
ALOGI("Could not rename process, failed read comm for %s.", dp->d_name);
continue;
}
std::string oldComm;
- fs >> oldComm;
+ if (!(fs >> oldComm)) continue;
// don't rename if it already has an explicit name
if (base::StartsWith(descriptor, oldComm)) {
- fs.seekg(0, fs.beg);
+ if (!fs.seekg(0, fs.beg)) continue;
fs << newName;
}
}
@@ -157,7 +157,7 @@
* Returns the age of the current process by reading /proc/self/stat and comparing starttime to the
* current time. This is useful for measuring how long it took a HAL to register itself.
*/
-static long getProcessAgeMs() {
+__attribute__((noinline)) static long getProcessAgeMs() {
constexpr const int PROCFS_STAT_STARTTIME_INDEX = 21;
std::string content;
android::base::ReadFileToString("/proc/self/stat", &content, false);