diff options
author | Qiwen Zhao <zhao@google.com> | 2014-11-13 02:13:36 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-11-13 02:13:36 +0000 |
commit | 723968fa7be64ed21e892465a88ff01902c0c512 (patch) | |
tree | 4fbd7e90128da660a6762937749efc78c7948e4d | |
parent | e52ac94d94a03e0356d241f264e7b04ba7e2a49b (diff) | |
parent | 0c2eb84264c5c5a9f4c9e7187bf926296ee49511 (diff) | |
download | android_frameworks_ex-723968fa7be64ed21e892465a88ff01902c0c512.tar.gz android_frameworks_ex-723968fa7be64ed21e892465a88ff01902c0c512.tar.bz2 android_frameworks_ex-723968fa7be64ed21e892465a88ff01902c0c512.zip |
am 0c2eb842: am ede5a97a: Merge commit \'25b78c8a18327bd73c3d4d34887dd63953aeaa8c\' into lmp-mr1-dev
* commit '0c2eb84264c5c5a9f4c9e7187bf926296ee49511':
Ensure default handler always is set if no other error handler registered
-rw-r--r-- | camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java | 15 |
1 files changed, 10 insertions, 5 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 cdd6993..201a905 100644 --- a/camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java +++ b/camera2/portability/src/com/android/ex/camera2/portability/AndroidCameraAgentImpl.java @@ -55,24 +55,28 @@ class AndroidCameraAgentImpl extends CameraAgent { private final HandlerThread mCameraHandlerThread; private final CameraStateHolder mCameraState; private final DispatchThread mDispatchThread; - private CameraExceptionHandler mExceptionHandler = new CameraExceptionHandler(null) { + + private static final CameraExceptionHandler sDefaultExceptionHandler = + new CameraExceptionHandler(null) { @Override public void onCameraError(int errorCode) { - Log.w(TAG, "onCameraError called before handler set: " + errorCode); + Log.w(TAG, "onCameraError called with no handler set: " + errorCode); } @Override public void onCameraException(RuntimeException ex, String commandHistory, int action, int state) { - Log.w(TAG, "onCameraException called before handler set", ex); + Log.w(TAG, "onCameraException called with no handler set", ex); } @Override public void onDispatchThreadException(RuntimeException ex) { - Log.w(TAG, "onDispatchThreadException called before handler set", ex); + Log.w(TAG, "onDispatchThreadException called with no handler set", ex); } }; + private CameraExceptionHandler mExceptionHandler = sDefaultExceptionHandler; + AndroidCameraAgentImpl() { mCameraHandlerThread = new HandlerThread("Camera Handler Thread"); mCameraHandlerThread.start(); @@ -117,7 +121,8 @@ class AndroidCameraAgentImpl extends CameraAgent { @Override public void setCameraExceptionHandler(CameraExceptionHandler exceptionHandler) { - mExceptionHandler = exceptionHandler; + // In case of null set the default handler to route exceptions to logs + mExceptionHandler = exceptionHandler != null ? exceptionHandler : sDefaultExceptionHandler; } private static class AndroidCameraDeviceInfo implements CameraDeviceInfo { |