drm_hwcomposer: Always call PrepareFrame() for compositions
Previously this was not called for compositions which were known to fail the atomic test. Unfortunately this left the composition in a state which could not be processed by SquashFrame (only one layer and source_layer was still set to kSourceSquash). So call PrepareFrame() on every composition so SquashFrame stays happy. Change-Id: I976e344ce4970370d9ca4307c2f2c45025199b64 Signed-off-by: Sean Paul <seanpaul@chromium.org>
This commit is contained in:
parent
6c18b3b67e
commit
e3141c6fa6
1 changed files with 4 additions and 6 deletions
|
|
@ -922,12 +922,10 @@ int DrmDisplayCompositor::Composite() {
|
|||
|
||||
switch (composition->type()) {
|
||||
case DRM_COMPOSITION_TYPE_FRAME:
|
||||
if (use_hw_overlays_ || composition->geometry_changed()) {
|
||||
ret = PrepareFrame(composition.get());
|
||||
if (ret) {
|
||||
ALOGE("Failed to prepare frame for display %d", display_);
|
||||
return ret;
|
||||
}
|
||||
ret = PrepareFrame(composition.get());
|
||||
if (ret) {
|
||||
ALOGE("Failed to prepare frame for display %d", display_);
|
||||
return ret;
|
||||
}
|
||||
if (composition->geometry_changed()) {
|
||||
// Send the composition to the kernel to ensure we can commit it. This
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue