Restore a mistakenly-removed null check
Passing null to camera.setPreviewDisplay() needs to work; this
restores the behavior from before the Surface/SurfaceControl
refactoring.
Bug: 8225538
Change-Id: Ib73bfa9fe53457a41a69b7fe5dfff3a3aa260f52
diff --git a/core/jni/android_hardware_Camera.cpp b/core/jni/android_hardware_Camera.cpp
index 7c65662..c0e12da 100644
--- a/core/jni/android_hardware_Camera.cpp
+++ b/core/jni/android_hardware_Camera.cpp
@@ -537,7 +537,10 @@
sp<Camera> camera = get_native_camera(env, thiz, NULL);
if (camera == 0) return;
- sp<Surface> surface = android_view_Surface_getSurface(env, jSurface);
+ sp<Surface> surface;
+ if (jSurface) {
+ surface = android_view_Surface_getSurface(env, jSurface);
+ }
if (camera->setPreviewDisplay(surface) != NO_ERROR) {
jniThrowException(env, "java/io/IOException", "setPreviewDisplay failed");