summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jean-Michel Trivi <jmtrivi@google.com> 2019-11-11 12:50:24 -0800
committer android-build-merger <android-build-merger@google.com> 2019-11-11 12:50:24 -0800
commitafed6fafe550c65efbee7c0a373674256d20ecc8 (patch)
treea608e28328b382f8e098b766b3994a55176456ec
parent756d3b447a8f19a9b7a1088315a8a8bb9855ae1f (diff)
parenta1ee32071b79fed89883b116878d5b420b615d15 (diff)
Merge "FocusRequester: fix NPE" am: c7ed3e7e22
am: a1ee32071b Change-Id: I59c311de7cd861748b6d2522440a6fae762ecce7
-rw-r--r--services/core/java/com/android/server/audio/FocusRequester.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/audio/FocusRequester.java b/services/core/java/com/android/server/audio/FocusRequester.java
index bd129f70ee29..41008c277e4b 100644
--- a/services/core/java/com/android/server/audio/FocusRequester.java
+++ b/services/core/java/com/android/server/audio/FocusRequester.java
@@ -437,7 +437,8 @@ public class FocusRequester {
}
int dispatchFocusChange(int focusChange) {
- if (mFocusDispatcher == null) {
+ final IAudioFocusDispatcher fd = mFocusDispatcher;
+ if (fd == null) {
if (MediaFocusControl.DEBUG) { Log.e(TAG, "dispatchFocusChange: no focus dispatcher"); }
return AudioManager.AUDIOFOCUS_REQUEST_FAILED;
}
@@ -457,7 +458,7 @@ public class FocusRequester {
mFocusLossReceived = focusChange;
}
try {
- mFocusDispatcher.dispatchAudioFocusChange(focusChange, mClientId);
+ fd.dispatchAudioFocusChange(focusChange, mClientId);
} catch (android.os.RemoteException e) {
Log.e(TAG, "dispatchFocusChange: error talking to focus listener " + mClientId, e);
return AudioManager.AUDIOFOCUS_REQUEST_FAILED;
@@ -466,16 +467,18 @@ public class FocusRequester {
}
void dispatchFocusResultFromExtPolicy(int requestResult) {
- if (mFocusDispatcher == null) {
+ final IAudioFocusDispatcher fd = mFocusDispatcher;
+ if (fd == null) {
if (MediaFocusControl.DEBUG) {
Log.e(TAG, "dispatchFocusResultFromExtPolicy: no focus dispatcher");
}
+ return;
}
if (DEBUG) {
Log.v(TAG, "dispatching result" + requestResult + " to " + mClientId);
}
try {
- mFocusDispatcher.dispatchFocusResultFromExtPolicy(requestResult, mClientId);
+ fd.dispatchFocusResultFromExtPolicy(requestResult, mClientId);
} catch (android.os.RemoteException e) {
Log.e(TAG, "dispatchFocusResultFromExtPolicy: error talking to focus listener"
+ mClientId, e);