SF: RenderEngine->drawLayers takes GraphicBuffer instead of ANativeWindow
RE interface is going to be moved to AIDL. In order to make it AIDL
compatible, drawLayer needs to take sp<GraphicBuffer> (because it's
already flattenable) instead of ANativeWindow.
Bug: 150064821
Test: atest CompositionEngineTest
Test: adb shell /data/nativetest64/.../libsurfaceflinger_unittest
Test: atest RenderEngineTest
Change-Id: Ifef487c93753d03f949f00e055a66ac6f0a98cb0
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index ef59b55..8f66928 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -5558,8 +5558,8 @@
void SurfaceFlinger::renderScreenImplLocked(const RenderArea& renderArea,
TraverseLayersFunction traverseLayers,
- ANativeWindowBuffer* buffer, bool useIdentityTransform,
- int* outSyncFd) {
+ const sp<GraphicBuffer>& buffer,
+ bool useIdentityTransform, int* outSyncFd) {
ATRACE_CALL();
const auto reqWidth = renderArea.getReqWidth();
@@ -5684,7 +5684,7 @@
status_t SurfaceFlinger::captureScreenImplLocked(const RenderArea& renderArea,
TraverseLayersFunction traverseLayers,
- ANativeWindowBuffer* buffer,
+ const sp<GraphicBuffer>& buffer,
bool useIdentityTransform, bool forSystem,
int* outSyncFd, bool& outCapturedSecureLayers) {
ATRACE_CALL();