[hwc PATCH v1] drm_hwcomposer: reorder source layers according to zorder

Adrian Salido salidoa at google.com
Thu Sep 21 23:53:48 UTC 2017


Precomp layers may be added to the back at different points which may
cause elements to be unsorted. Make sure that these are sorted after
provisioning planes to ensure right composition based on zorder.

Signed-off-by: Adrian Salido <salidoa at google.com>
---
 drmdisplaycomposition.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drmdisplaycomposition.cpp b/drmdisplaycomposition.cpp
index 293160bfd012..0f8084b39706 100644
--- a/drmdisplaycomposition.cpp
+++ b/drmdisplaycomposition.cpp
@@ -379,6 +379,9 @@ int DrmDisplayComposition::Plan(SquashState *squash,
     if (!i.plane())
       continue;
 
+    // make sure that source layers are ordered based on zorder
+    std::sort(i.source_layers().begin(), i.source_layers().end());
+
     std::vector<DrmPlane *> *container;
     if (i.plane()->type() == DRM_PLANE_TYPE_PRIMARY)
       container = primary_planes;
-- 
2.14.1.821.g8fa685d3b7-goog



More information about the dri-devel mailing list