summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/api2/CameraDeviceClient.cpp
diff options
context:
space:
mode:
authorYin-Chia Yeh <yinchiayeh@google.com>2014-06-10 16:05:44 -0700
committerYin-Chia Yeh <yinchiayeh@google.com>2014-06-10 16:14:03 -0700
commit89f14dacfadea1b14149510d4dfbc75dc79b23bb (patch)
tree1829a1e075e52557a963bf2e96e6eaa6c04a11da /services/camera/libcameraservice/api2/CameraDeviceClient.cpp
parentd8754e07e23eecb68068c0c392aeb0428c529e4e (diff)
downloadframeworks_av-89f14dacfadea1b14149510d4dfbc75dc79b23bb.zip
frameworks_av-89f14dacfadea1b14149510d4dfbc75dc79b23bb.tar.gz
frameworks_av-89f14dacfadea1b14149510d4dfbc75dc79b23bb.tar.bz2
Camera2: Add null check to createStream
Prevent a native null dereference crash. bug: 15332257 Change-Id: I10c4053a0b4f07fbf52c37dd2f2853b501def669
Diffstat (limited to 'services/camera/libcameraservice/api2/CameraDeviceClient.cpp')
-rw-r--r--services/camera/libcameraservice/api2/CameraDeviceClient.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/services/camera/libcameraservice/api2/CameraDeviceClient.cpp b/services/camera/libcameraservice/api2/CameraDeviceClient.cpp
index 4fce1b3..8154e59 100644
--- a/services/camera/libcameraservice/api2/CameraDeviceClient.cpp
+++ b/services/camera/libcameraservice/api2/CameraDeviceClient.cpp
@@ -310,6 +310,10 @@ status_t CameraDeviceClient::createStream(int width, int height, int format,
Mutex::Autolock icl(mBinderSerializationLock);
+ if (bufferProducer == NULL) {
+ ALOGE("%s: bufferProducer must not be null", __FUNCTION__);
+ return BAD_VALUE;
+ }
if (!mDevice.get()) return DEAD_OBJECT;
// Don't create multiple streams for the same target surface