diff options
Diffstat (limited to 'services/camera/libcameraservice/CameraClient.cpp')
-rw-r--r-- | services/camera/libcameraservice/CameraClient.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/services/camera/libcameraservice/CameraClient.cpp b/services/camera/libcameraservice/CameraClient.cpp index 1cdb938..967562d 100644 --- a/services/camera/libcameraservice/CameraClient.cpp +++ b/services/camera/libcameraservice/CameraClient.cpp @@ -251,8 +251,10 @@ void CameraClient::disconnect() { // Release the held ANativeWindow resources. if (mPreviewWindow != 0) { #ifdef QCOM_HARDWARE +#ifndef NO_UPDATE_PREVIEW mHardware->setPreviewWindow(0); #endif +#endif disconnectWindow(mPreviewWindow); mPreviewWindow = 0; #ifndef QCOM_HARDWARE @@ -297,9 +299,14 @@ status_t CameraClient::setPreviewWindow(const sp<IBinder>& binder, result = mHardware->setPreviewWindow(window); } #ifdef QCOM_HARDWARE +#ifndef NO_UPDATE_PREVIEW } else { + if (window != 0) { + native_window_set_buffers_transform(window.get(), mOrientation); + } result = mHardware->setPreviewWindow(window); #endif +#endif } if (result == NO_ERROR) { |