Fix partial reset function in StateTracker
Partial reset should notify all StateListeners of a state change similar
to the full reset function.
Test: bit statsd_test:*
Bug: 145838567
Change-Id: I5562b4db6f3e0be94385270d19b54f8934d8a85e
diff --git a/cmds/statsd/src/state/StateTracker.cpp b/cmds/statsd/src/state/StateTracker.cpp
index 90ce1e9..ef59c92 100644
--- a/cmds/statsd/src/state/StateTracker.cpp
+++ b/cmds/statsd/src/state/StateTracker.cpp
@@ -139,6 +139,13 @@
const HashableDimensionKey& primaryKey) {
VLOG("StateTracker handle partial reset");
if (mStateMap.find(primaryKey) != mStateMap.end()) {
+ for (auto l : mListeners) {
+ auto sl = l.promote();
+ if (sl != nullptr) {
+ sl->onStateChanged(eventTimeNs, mAtomId, primaryKey,
+ mStateMap.find(primaryKey)->second.state, mDefaultState);
+ }
+ }
mStateMap.erase(primaryKey);
}
}