diff options
author | Alan Newberger <alann@google.com> | 2014-10-27 14:23:23 -0700 |
---|---|---|
committer | Alan Newberger <alann@google.com> | 2014-10-27 14:23:23 -0700 |
commit | c15ddae4862bb9a10b0142fac9558a5f899b1a21 (patch) | |
tree | a904e540e7af158195c9cbc8914fdca90173b6a8 | |
parent | 733ca8dfa76ac34d1f9caff8798d01a4a8f44002 (diff) | |
download | android_frameworks_ex-c15ddae4862bb9a10b0142fac9558a5f899b1a21.tar.gz android_frameworks_ex-c15ddae4862bb9a10b0142fac9558a5f899b1a21.tar.bz2 android_frameworks_ex-c15ddae4862bb9a10b0142fac9558a5f899b1a21.zip |
Ensure agent error handler is always non-null
Create a dummy placeholder handler which logs warnings, which
can be replaced by app if desired. This makes various assumptions
valid that this is non-null.
Bug: 18137167
Change-Id: I0f508dff3cfe766ccc5a3c5a26c6196f4fb31e04
-rw-r--r-- | camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java b/camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java index 9910dd9..cdd6993 100644 --- a/camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java +++ b/camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java @@ -55,7 +55,23 @@ class AndroidCameraAgentImpl extends CameraAgent { private final HandlerThread mCameraHandlerThread; private final CameraStateHolder mCameraState; private final DispatchThread mDispatchThread; - private CameraExceptionHandler mExceptionHandler; + private CameraExceptionHandler mExceptionHandler = new CameraExceptionHandler(null) { + @Override + public void onCameraError(int errorCode) { + Log.w(TAG, "onCameraError called before handler set: " + errorCode); + } + + @Override + public void onCameraException(RuntimeException ex, String commandHistory, int action, + int state) { + Log.w(TAG, "onCameraException called before handler set", ex); + } + + @Override + public void onDispatchThreadException(RuntimeException ex) { + Log.w(TAG, "onDispatchThreadException called before handler set", ex); + } + }; AndroidCameraAgentImpl() { mCameraHandlerThread = new HandlerThread("Camera Handler Thread"); |