commit | d98df67b802058b06f032224d64ce992816f7a03 | [log] [tgz] |
---|---|---|
author | Treehugger Robot <treehugger-gerrit@google.com> | Fri May 27 10:09:58 2022 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Fri May 27 10:09:58 2022 +0000 |
tree | 8db57dd41ee0a96a5b57cec734d1a672744ed1c1 | |
parent | 68eb8042a6afff193801bbeb3d0036d441514c5c [diff] | |
parent | 019e6eb2d77319ad834f0c7c5fdba8f6d169522c [diff] |
Merge "Fix crash when decrementing data usage request" am: 019e6eb2d7 Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/2108064 Change-Id: I0f7a9035af4e1532beb6dd81d764fa6026775549 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/service-t/src/com/android/server/net/NetworkStatsObservers.java b/service-t/src/com/android/server/net/NetworkStatsObservers.java index df4e7f5..1cd670a 100644 --- a/service-t/src/com/android/server/net/NetworkStatsObservers.java +++ b/service-t/src/com/android/server/net/NetworkStatsObservers.java
@@ -198,7 +198,7 @@ if (LOG) Log.d(TAG, "Unregistering " + requestInfo); mDataUsageRequests.remove(request.requestId); - mDataUsageRequestsPerUid.decrementCountOrThrow(callingUid); + mDataUsageRequestsPerUid.decrementCountOrThrow(requestInfo.mCallingUid); requestInfo.unlinkDeathRecipient(); requestInfo.callCallback(NetworkStatsManager.CALLBACK_RELEASED); }
diff --git a/tests/unit/java/com/android/server/net/NetworkStatsObserversTest.java b/tests/unit/java/com/android/server/net/NetworkStatsObserversTest.java index e8c9637..5747e10 100644 --- a/tests/unit/java/com/android/server/net/NetworkStatsObserversTest.java +++ b/tests/unit/java/com/android/server/net/NetworkStatsObserversTest.java
@@ -274,8 +274,12 @@ mStatsObservers.unregister(request, UID_BLUE); waitForObserverToIdle(); - Mockito.verifyZeroInteractions(mUsageCallbackBinder); + + // Verify that system uid can unregister for other uids. + mStatsObservers.unregister(request, Process.SYSTEM_UID); + waitForObserverToIdle(); + mUsageCallback.expectOnCallbackReleased(request); } private NetworkIdentitySet makeTestIdentSet() {