From f3cf4bcfa2c558f03e178f7044d3cb12fa0e73ed Mon Sep 17 00:00:00 2001 From: Jorim Jaggi Date: Thu, 30 Nov 2017 14:19:23 +0100 Subject: Make SurfaceControl parcelable (2/2) Bug: 69145041 Test: Send SurfaceControl over binder Change-Id: I47aa4a4bb39fab3ed4d1d30d4e472de7cbc5ca38 --- libs/gui/SurfaceComposerClient.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'libs/gui/SurfaceComposerClient.cpp') diff --git a/libs/gui/SurfaceComposerClient.cpp b/libs/gui/SurfaceComposerClient.cpp index 2466d2555a..4c8cab24b6 100644 --- a/libs/gui/SurfaceComposerClient.cpp +++ b/libs/gui/SurfaceComposerClient.cpp @@ -543,9 +543,14 @@ SurfaceComposerClient::SurfaceComposerClient(const sp& r { } +SurfaceComposerClient::SurfaceComposerClient(const sp& client) + : mStatus(NO_ERROR), mClient(client) +{ +} + void SurfaceComposerClient::onFirstRef() { sp sf(ComposerService::getComposerService()); - if (sf != 0) { + if (sf != 0 && mStatus == NO_INIT) { auto rootProducer = mParent.promote(); sp conn; conn = (rootProducer != nullptr) ? sf->createScopedConnection(rootProducer) : -- cgit v1.2.3-59-g8ed1b