summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/dumputils/dump_utils.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/libs/dumputils/dump_utils.cpp b/libs/dumputils/dump_utils.cpp
index 26c2a0d802..a00459d352 100644
--- a/libs/dumputils/dump_utils.cpp
+++ b/libs/dumputils/dump_utils.cpp
@@ -110,13 +110,15 @@ std::set<int> get_interesting_hal_pids() {
}
bool IsZygote(int pid) {
- static const std::string kZygotePrefix = "zygote";
-
std::string cmdline;
if (!android::base::ReadFileToString(android::base::StringPrintf("/proc/%d/cmdline", pid),
&cmdline)) {
return true;
}
- return (cmdline.find(kZygotePrefix) == 0);
+ // cmdline has embedded nulls; only consider argv[0].
+ cmdline = std::string(cmdline.c_str());
+
+ return cmdline == "zygote" || cmdline == "zygote64" || cmdline == "usap32" ||
+ cmdline == "usap64";
}