From b0acf7fcfab08b5af1f99daa51bedbb659d18926 Mon Sep 17 00:00:00 2001 From: Eino-Ville Talvala Date: Wed, 11 Feb 2015 15:41:12 -0800 Subject: [PATCH] Legacy: Only set user surface dimensions on output surfaces The GL layer gets exclusive use of the direct producer dimensions; we should only set the user dimensions. Bug: 16404608 Change-Id: Ie5b720104bdbee6b096b62520baa1c6b518c6c1c --- ...id_hardware_camera2_legacy_LegacyCameraDevice.cpp | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/core/jni/android_hardware_camera2_legacy_LegacyCameraDevice.cpp b/core/jni/android_hardware_camera2_legacy_LegacyCameraDevice.cpp index b27add801ecb0..0a6fb9db9527a 100644 --- a/core/jni/android_hardware_camera2_legacy_LegacyCameraDevice.cpp +++ b/core/jni/android_hardware_camera2_legacy_LegacyCameraDevice.cpp @@ -598,15 +598,10 @@ static jint LegacyCameraDevice_nativeSetSurfaceDimens(JNIEnv* env, jobject thiz, ALOGE("%s: Could not retrieve native window from surface.", __FUNCTION__); return BAD_VALUE; } - status_t err = native_window_set_buffers_dimensions(anw.get(), width, height); - if (err != NO_ERROR) { - ALOGE("%s: Error while setting surface dimens %s (%d).", __FUNCTION__, strerror(-err), err); - return err; - } - // WAR - Set user dimensions also to avoid incorrect scaling after TextureView orientation - // change. - err = native_window_set_buffers_user_dimensions(anw.get(), width, height); + // Set user dimensions only + // The producer dimensions are owned by GL + status_t err = native_window_set_buffers_user_dimensions(anw.get(), width, height); if (err != NO_ERROR) { ALOGE("%s: Error while setting surface user dimens %s (%d).", __FUNCTION__, strerror(-err), err); @@ -750,4 +745,3 @@ int register_android_hardware_camera2_legacy_LegacyCameraDevice(JNIEnv* env) gCameraDeviceMethods, NELEM(gCameraDeviceMethods)); } -