summaryrefslogtreecommitdiffstats
path: root/services/camera/libcameraservice/CameraClient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'services/camera/libcameraservice/CameraClient.cpp')
-rw-r--r--services/camera/libcameraservice/CameraClient.cpp7
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) {