summaryrefslogtreecommitdiffstats
path: root/camera
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2014-08-21 13:41:42 -0700
committerRuben Brunk <rubenbrunk@google.com>2014-08-21 14:05:00 -0700
commitb3afa1e3c2af242e0d31a7619713b170d43c7e88 (patch)
treebe4d3567f1799643251ab3fc1a81ce83e4d7f28e /camera
parente0b5cf7eae5ae16699864eeb8ae36975caa7a26c (diff)
downloadframeworks_av-b3afa1e3c2af242e0d31a7619713b170d43c7e88.zip
frameworks_av-b3afa1e3c2af242e0d31a7619713b170d43c7e88.tar.gz
frameworks_av-b3afa1e3c2af242e0d31a7619713b170d43c7e88.tar.bz2
camera2: Fix CameraUtils orientation for front camera.
Bug: 16637957 Change-Id: If6d213794a92eb60b8a333546670ca868b75e5fc
Diffstat (limited to 'camera')
-rw-r--r--camera/CameraUtils.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/camera/CameraUtils.cpp b/camera/CameraUtils.cpp
index 1ff63ab..04244ac 100644
--- a/camera/CameraUtils.cpp
+++ b/camera/CameraUtils.cpp
@@ -73,23 +73,23 @@ status_t CameraUtils::getRotationTransform(const CameraMetadata& staticInfo,
return INVALID_OPERATION;
}
} else {
- // Front camera needs to be horizontally flipped for
- // mirror-like behavior.
- // Note: Flips are applied before rotates.
+ // Front camera needs to be horizontally flipped for mirror-like behavior.
+ // Note: Flips are applied before rotates; using XOR here as some of these flags are
+ // composed in terms of other flip/rotation flags, and are not bitwise-ORable.
switch (orientation) {
case 0:
flags = NATIVE_WINDOW_TRANSFORM_FLIP_H;
break;
case 90:
- flags = NATIVE_WINDOW_TRANSFORM_FLIP_H |
+ flags = NATIVE_WINDOW_TRANSFORM_FLIP_H ^
NATIVE_WINDOW_TRANSFORM_ROT_270;
break;
case 180:
- flags = NATIVE_WINDOW_TRANSFORM_FLIP_H |
+ flags = NATIVE_WINDOW_TRANSFORM_FLIP_H ^
NATIVE_WINDOW_TRANSFORM_ROT_180;
break;
case 270:
- flags = NATIVE_WINDOW_TRANSFORM_FLIP_H |
+ flags = NATIVE_WINDOW_TRANSFORM_FLIP_H ^
NATIVE_WINDOW_TRANSFORM_ROT_90;
break;