summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2018-03-22 21:36:50 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2018-03-22 21:36:50 +0000
commit23ceeb3a440fa5e621d03f9b4531f3b0244d13a5 (patch)
tree211d67786af8665b73ae17999085ac117507f978
parente7c26531c0e0bc7d679c855c66580b3e46856305 (diff)
parent59cc0a2237fe0527c9871f0236e9bc76146990b7 (diff)
Merge "Fix UidMap proto output error. And fix a bug in MaxDurationTracker." into pi-dev
-rw-r--r--cmds/statsd/src/metrics/duration_helper/MaxDurationTracker.cpp5
-rw-r--r--cmds/statsd/src/packages/UidMap.cpp3
2 files changed, 5 insertions, 3 deletions
diff --git a/cmds/statsd/src/metrics/duration_helper/MaxDurationTracker.cpp b/cmds/statsd/src/metrics/duration_helper/MaxDurationTracker.cpp
index 335ec4c7cbd5..c9547cf4bf41 100644
--- a/cmds/statsd/src/metrics/duration_helper/MaxDurationTracker.cpp
+++ b/cmds/statsd/src/metrics/duration_helper/MaxDurationTracker.cpp
@@ -205,11 +205,12 @@ bool MaxDurationTracker::flushCurrentBucket(
bool hasPendingEvent =
false; // has either a kStarted or kPaused event across bucket boundaries
// meaning we need to carry them over to the new bucket.
- for (auto it = mInfos.begin(); it != mInfos.end(); ++it) {
+ for (auto it = mInfos.begin(); it != mInfos.end();) {
if (it->second.state == DurationState::kStopped) {
// No need to keep buckets for events that were stopped before.
- mInfos.erase(it);
+ it = mInfos.erase(it);
} else {
+ ++it;
hasPendingEvent = true;
}
}
diff --git a/cmds/statsd/src/packages/UidMap.cpp b/cmds/statsd/src/packages/UidMap.cpp
index 3ba4b7a20fbe..1cb20bc732d8 100644
--- a/cmds/statsd/src/packages/UidMap.cpp
+++ b/cmds/statsd/src/packages/UidMap.cpp
@@ -365,7 +365,8 @@ void UidMap::appendUidMap(const int64_t& timestamp, const ConfigKey& key,
count++;
proto->write(FIELD_TYPE_INT64 | FIELD_ID_SNAPSHOT_TIMESTAMP,
(long long)record.timestampNs);
- proto->write(FIELD_TYPE_MESSAGE | FIELD_ID_SNAPSHOT_PACKAGE_INFO, record.bytes.data());
+ proto->write(FIELD_TYPE_MESSAGE | FIELD_ID_SNAPSHOT_PACKAGE_INFO, record.bytes.data(),
+ record.bytes.size());
proto->end(snapshotsToken);
}
}