summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> 2024-12-18 21:22:46 -0800
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2024-12-18 21:22:46 -0800
commit2bdcb10b5e1a7f802b078eba55cdf5378d79beea (patch)
tree7a8ddca11c065f7c1f2fff048b54d9b0b58ed8e9
parentda72c8cf7a82c2c85a21854181c5be3a56807466 (diff)
parent0543aff7e8671c4053e9c05e5db42ed6597f493c (diff)
Merge "FadeOutManager: the NPE problem due to add null value to SparseArray." into main am: 7c3767605e am: 0543aff7e8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/3415680 Change-Id: Ie72c83e46ec058350c29c0c5167570fd793de03e Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--media/java/android/media/FadeManagerConfiguration.java1
-rw-r--r--services/core/java/com/android/server/audio/FadeOutManager.java6
2 files changed, 5 insertions, 2 deletions
diff --git a/media/java/android/media/FadeManagerConfiguration.java b/media/java/android/media/FadeManagerConfiguration.java
index 6d84e7066839..b91a5b57ac6b 100644
--- a/media/java/android/media/FadeManagerConfiguration.java
+++ b/media/java/android/media/FadeManagerConfiguration.java
@@ -673,6 +673,7 @@ public final class FadeManagerConfiguration implements Parcelable {
return config != null ? config.getDuration() : DURATION_NOT_SET;
}
+ @Nullable
private VolumeShaper.Configuration getVolumeShaperConfigFromWrapper(
FadeVolumeShaperConfigsWrapper wrapper, boolean isFadeIn) {
// if no volume shaper config is available, return null
diff --git a/services/core/java/com/android/server/audio/FadeOutManager.java b/services/core/java/com/android/server/audio/FadeOutManager.java
index 4d5bce559a91..fedfe511b747 100644
--- a/services/core/java/com/android/server/audio/FadeOutManager.java
+++ b/services/core/java/com/android/server/audio/FadeOutManager.java
@@ -199,7 +199,9 @@ public final class FadeOutManager {
for (AudioPlaybackConfiguration apc : players) {
final VolumeShaper.Configuration volShaper =
mFadeConfigurations.getFadeOutVolumeShaperConfig(apc.getAudioAttributes());
- fa.addFade(apc, /* skipRamp= */ false, volShaper);
+ if (volShaper != null) {
+ fa.addFade(apc, /* skipRamp= */ false, volShaper);
+ }
}
}
}
@@ -249,7 +251,7 @@ public final class FadeOutManager {
final VolumeShaper.Configuration volShaper =
mFadeConfigurations.getFadeOutVolumeShaperConfig(apc.getAudioAttributes());
final FadedOutApp fa = mUidToFadedAppsMap.get(apc.getClientUid());
- if (fa == null) {
+ if (fa == null || volShaper == null) {
return;
}
fa.addFade(apc, /* skipRamp= */ true, volShaper);