From 28dbde32c2fa4a19a8bf3875e1756fb2a787695c Mon Sep 17 00:00:00 2001 From: Dan Stoza Date: Mon, 2 Mar 2015 22:12:37 -0800 Subject: Surface: Permit an IProducerListener on connect This change allows clients of Surface to provide an IProducerListener callback object to Surface::connect, which will be passed down to the underlying IGraphicBufferProducer Change-Id: I5ea5229bf3a329bf02c6bd20e7247039c75d136b --- libs/gui/Surface.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'libs') diff --git a/libs/gui/Surface.cpp b/libs/gui/Surface.cpp index 0e2baa28fd..9bd0d0dd55 100644 --- a/libs/gui/Surface.cpp +++ b/libs/gui/Surface.cpp @@ -546,9 +546,13 @@ int Surface::dispatchSetSidebandStream(va_list args) { } int Surface::connect(int api) { + static sp listener = new DummyProducerListener(); + return connect(api, listener); +} + +int Surface::connect(int api, const sp& listener) { ATRACE_CALL(); ALOGV("Surface::connect"); - static sp listener = new DummyProducerListener(); Mutex::Autolock lock(mMutex); IGraphicBufferProducer::QueueBufferOutput output; int err = mGraphicBufferProducer->connect(listener, api, mProducerControlledByApp, &output); -- cgit v1.2.3-59-g8ed1b