From 8f63c2049b93819c41d390fc4222b9307e3a61c7 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Wed, 25 Sep 2013 20:44:34 -0700 Subject: [PATCH] fix initialization of framebuffer target crop rect on hwc 1.3 Bug: 10936771 Change-Id: If283e5e231ca34b93e0b1784bb4e8e4c7bfd75de --- services/surfaceflinger/DisplayHardware/HWComposer.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/services/surfaceflinger/DisplayHardware/HWComposer.cpp b/services/surfaceflinger/DisplayHardware/HWComposer.cpp index 32c55fd1f..c851a2c06 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 =