Use SharedRefBase::make to allocate.
SharedRefBase now encapsulates heap allocation in order to guard against
some types of double-ownership.
Bug: 149249948
Test: TH
Change-Id: Ida943c895225331a853e4c8da54454d60b17000a
diff --git a/drm/libmediadrm/DrmHal.cpp b/drm/libmediadrm/DrmHal.cpp
index 5b32a04..f218041 100644
--- a/drm/libmediadrm/DrmHal.cpp
+++ b/drm/libmediadrm/DrmHal.cpp
@@ -713,7 +713,8 @@
} while (retry);
if (err == OK) {
- std::shared_ptr<DrmSessionClient> client(new DrmSessionClient(this, sessionId));
+ std::shared_ptr<DrmSessionClient> client =
+ ndk::SharedRefBase::make<DrmSessionClient>(this, sessionId);
DrmSessionManager::Instance()->addSession(AIBinder_getCallingPid(),
std::static_pointer_cast<IResourceManagerClient>(client), sessionId);
mOpenSessions.push_back(client);