summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/device3/Camera3Device.cpp
diff options
context:
space:
mode:
authorEino-Ville Talvala <etalvala@google.com>2014-07-23 17:17:59 -0700
committerEino-Ville Talvala <etalvala@google.com>2014-07-28 20:20:36 +0000
commitf67e23ef637d0b53a0d4bebb68c654234df3da94 (patch)
tree3b61f96b8fa4a85b3a1780e03985d15e8e2e3d5c /services/camera/libcameraservice/device3/Camera3Device.cpp
parentef9c5ade2308f9eb6f222db3c4796e196f0ab76c (diff)
downloadframeworks_av-f67e23ef637d0b53a0d4bebb68c654234df3da94.zip
frameworks_av-f67e23ef637d0b53a0d4bebb68c654234df3da94.tar.gz
frameworks_av-f67e23ef637d0b53a0d4bebb68c654234df3da94.tar.bz2
CameraService: Clean up availability listeners and HAL error codes
- Refactor where availability listeners are called to centralize behavior, ensuring that all client creation/destruction invokes the listeners - Clean up some of the client hierarchy - Filter error codes from key HAL calls to ensure proper reporting Bug: 16514157 Bug: 16483222 Change-Id: I59875a865b6a508b47423946c78862da8df34cd1
Diffstat (limited to 'services/camera/libcameraservice/device3/Camera3Device.cpp')
-rw-r--r--services/camera/libcameraservice/device3/Camera3Device.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/services/camera/libcameraservice/device3/Camera3Device.cpp b/services/camera/libcameraservice/device3/Camera3Device.cpp
index 44e8822..a6214cc 100644
--- a/services/camera/libcameraservice/device3/Camera3Device.cpp
+++ b/services/camera/libcameraservice/device3/Camera3Device.cpp
@@ -48,6 +48,7 @@
#include "device3/Camera3OutputStream.h"
#include "device3/Camera3InputStream.h"
#include "device3/Camera3ZslStream.h"
+#include "CameraService.h"
using namespace android::camera3;
@@ -104,8 +105,9 @@ status_t Camera3Device::initialize(camera_module_t *module)
camera3_device_t *device;
ATRACE_BEGIN("camera3->open");
- res = module->common.methods->open(&module->common, deviceName.string(),
- reinterpret_cast<hw_device_t**>(&device));
+ res = CameraService::filterOpenErrorCode(module->common.methods->open(
+ &module->common, deviceName.string(),
+ reinterpret_cast<hw_device_t**>(&device)));
ATRACE_END();
if (res != OK) {
@@ -124,7 +126,8 @@ status_t Camera3Device::initialize(camera_module_t *module)
}
camera_info info;
- res = module->get_camera_info(mId, &info);
+ res = CameraService::filterGetInfoErrorCode(module->get_camera_info(
+ mId, &info));
if (res != OK) return res;
if (info.device_version != device->common.version) {