summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmds/statsd/src/StatsService.cpp9
-rw-r--r--cmds/statsd/src/guardrail/StatsdStats.cpp4
2 files changed, 10 insertions, 3 deletions
diff --git a/cmds/statsd/src/StatsService.cpp b/cmds/statsd/src/StatsService.cpp
index 26db3af7d41a..bf6cee77386a 100644
--- a/cmds/statsd/src/StatsService.cpp
+++ b/cmds/statsd/src/StatsService.cpp
@@ -423,6 +423,13 @@ status_t StatsService::cmd_config(FILE* in, FILE* out, FILE* err, Vector<String8
}
if (args[1] == "update") {
+ char* endp;
+ int64_t configID = strtoll(name.c_str(), &endp, 10);
+ if (endp == name.c_str() || *endp != '\0') {
+ fprintf(err, "Error parsing config ID.\n");
+ return UNKNOWN_ERROR;
+ }
+
// Read stream into buffer.
string buffer;
if (!android::base::ReadFdToString(fileno(in), &buffer)) {
@@ -438,7 +445,7 @@ status_t StatsService::cmd_config(FILE* in, FILE* out, FILE* err, Vector<String8
}
// Add / update the config.
- mConfigManager->UpdateConfig(ConfigKey(uid, StrToInt64(name)), config);
+ mConfigManager->UpdateConfig(ConfigKey(uid, configID), config);
} else {
if (argCount == 2) {
cmd_remove_all_configs(out);
diff --git a/cmds/statsd/src/guardrail/StatsdStats.cpp b/cmds/statsd/src/guardrail/StatsdStats.cpp
index 66cb1d04a4e1..6e4512835b7a 100644
--- a/cmds/statsd/src/guardrail/StatsdStats.cpp
+++ b/cmds/statsd/src/guardrail/StatsdStats.cpp
@@ -367,7 +367,7 @@ void StatsdStats::dumpStats(FILE* out) const {
fprintf(out, "%lu Config in icebox: \n", (unsigned long)mIceBox.size());
for (const auto& configStats : mIceBox) {
fprintf(out,
- "Config {%d-%lld}: creation=%d, deletion=%d, #metric=%d, #condition=%d, "
+ "Config {%d_%lld}: creation=%d, deletion=%d, #metric=%d, #condition=%d, "
"#matcher=%d, #alert=%d, valid=%d\n",
configStats.uid(), (long long)configStats.id(), configStats.creation_time_sec(),
configStats.deletion_time_sec(), configStats.metric_count(),
@@ -566,4 +566,4 @@ void StatsdStats::dumpStats(std::vector<uint8_t>* output, bool reset) {
} // namespace statsd
} // namespace os
-} // namespace android \ No newline at end of file
+} // namespace android