summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2013-09-25 20:44:34 -0700
committerMathias Agopian <mathias@google.com>2013-09-25 20:44:34 -0700
commit8f63c2049b93819c41d390fc4222b9307e3a61c7 (patch)
treeb9f2b0f6fb50da760e52c2bffea52a309f5a598f /services
parentd555684cb36dfb959694db76962e570184f98838 (diff)
downloadframeworks_native-8f63c2049b93819c41d390fc4222b9307e3a61c7.zip
frameworks_native-8f63c2049b93819c41d390fc4222b9307e3a61c7.tar.gz
frameworks_native-8f63c2049b93819c41d390fc4222b9307e3a61c7.tar.bz2
fix initialization of framebuffer target crop rect on hwc 1.3
Bug: 10936771 Change-Id: If283e5e231ca34b93e0b1784bb4e8e4c7bfd75de
Diffstat (limited to 'services')
-rw-r--r--services/surfaceflinger/DisplayHardware/HWComposer.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/services/surfaceflinger/DisplayHardware/HWComposer.cpp b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
index 32c55fd..c851a2c 100644
--- a/services/surfaceflinger/DisplayHardware/HWComposer.cpp
+++ b/services/surfaceflinger/DisplayHardware/HWComposer.cpp
@@ -524,7 +524,14 @@ status_t HWComposer::createWorkList(int32_t id, size_t numLayers) {
disp.framebufferTarget->handle = disp.fbTargetHandle;
disp.framebufferTarget->transform = 0;
disp.framebufferTarget->blending = HWC_BLENDING_PREMULT;
- disp.framebufferTarget->sourceCrop = r;
+ if (hwcHasApiVersion(mHwc, HWC_DEVICE_API_VERSION_1_3)) {
+ disp.framebufferTarget->sourceCropf.left = 0;
+ disp.framebufferTarget->sourceCropf.top = 0;
+ disp.framebufferTarget->sourceCropf.right = disp.width;
+ disp.framebufferTarget->sourceCropf.bottom = disp.height;
+ } else {
+ disp.framebufferTarget->sourceCrop = r;
+ }
disp.framebufferTarget->displayFrame = r;
disp.framebufferTarget->visibleRegionScreen.numRects = 1;
disp.framebufferTarget->visibleRegionScreen.rects =