summaryrefslogtreecommitdiff
path: root/libs/gui/StreamSplitter.cpp
diff options
context:
space:
mode:
author Anton Ivanov <aii@google.com> 2025-02-13 22:57:24 -0800
committer Anton Ivanov <aii@google.com> 2025-02-17 17:52:19 -0800
commit81793808b9347a52dd979e4b3d5d9d10fc8c4915 (patch)
tree51529ad19b47e374dcfe15cab26f910a6c4f5319 /libs/gui/StreamSplitter.cpp
parentf6dc8535293c1614e9c08e6416fe67a3514ed0e8 (diff)
Harden construction sites of android::StrongPointer.
Bug: 393217449 Test: presubmit Flag: EXEMPT_refactor Change-Id: Icf703aed608531e9b302b299481af00a52074731
Diffstat (limited to 'libs/gui/StreamSplitter.cpp')
-rw-r--r--libs/gui/StreamSplitter.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/libs/gui/StreamSplitter.cpp b/libs/gui/StreamSplitter.cpp
index 653b91bcf6..9b107fc514 100644
--- a/libs/gui/StreamSplitter.cpp
+++ b/libs/gui/StreamSplitter.cpp
@@ -47,7 +47,7 @@ status_t StreamSplitter::createSplitter(
return BAD_VALUE;
}
- sp<StreamSplitter> splitter(new StreamSplitter(inputQueue));
+ sp<StreamSplitter> splitter = sp<StreamSplitter>::make(inputQueue);
status_t status = splitter->mInput->consumerConnect(splitter, false);
if (status == NO_ERROR) {
splitter->mInput->setConsumerName(String8("StreamSplitter"));
@@ -82,7 +82,8 @@ status_t StreamSplitter::addOutput(
Mutex::Autolock lock(mMutex);
IGraphicBufferProducer::QueueBufferOutput queueBufferOutput;
- sp<OutputListener> listener(new OutputListener(this, outputQueue));
+ sp<OutputListener> listener =
+ sp<OutputListener>::make(sp<StreamSplitter>::fromExisting(this), outputQueue);
IInterface::asBinder(outputQueue)->linkToDeath(listener);
status_t status = outputQueue->connect(listener, NATIVE_WINDOW_API_CPU,
/* producerControlledByApp */ false, &queueBufferOutput);
@@ -140,7 +141,7 @@ void StreamSplitter::onFrameAvailable(const BufferItem& /* item */) {
// Initialize our reference count for this buffer
mBuffers.add(bufferItem.mGraphicBuffer->getId(),
- new BufferTracker(bufferItem.mGraphicBuffer));
+ sp<BufferTracker>::make(bufferItem.mGraphicBuffer));
IGraphicBufferProducer::QueueBufferInput queueInput(
bufferItem.mTimestamp, bufferItem.mIsAutoTimestamp,