Fix wrong framebufferspace computation
When the framebuffer size is 1/2 of the display
we were multiplying with 2 instead of dividing
when computing the content.
Bug: 161793589
Bug: 168788659
Test: atest OutputTest
Change-Id: I3bba764e87a1a5e9c4491d9f2f117b6c1f51371d
diff --git a/services/surfaceflinger/CompositionEngine/src/Output.cpp b/services/surfaceflinger/CompositionEngine/src/Output.cpp
index 44edb6e..04dceae 100644
--- a/services/surfaceflinger/CompositionEngine/src/Output.cpp
+++ b/services/surfaceflinger/CompositionEngine/src/Output.cpp
@@ -148,7 +148,7 @@
LOG_FATAL_IF(outputState.framebufferSpace.bounds == Rect::INVALID_RECT,
"The framebuffer bounds are unknown.");
const auto scale =
- getScale(outputState.framebufferSpace.bounds, outputState.displaySpace.bounds);
+ getScale(outputState.displaySpace.bounds, outputState.framebufferSpace.bounds);
outputState.framebufferSpace.content = outputState.displaySpace.content.scale(scale.x, scale.y);
// Compute layerStackSpace