From 2d8bedd05437b6fccdbc6bf70f673ffd86744d59 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Tue, 21 Feb 2012 14:38:23 -0800 Subject: Add new APIs AMessage::(set|find)Buffer to make it safer to pass ABuffer objects through messages. Change-Id: I9f8b4e4c4767d0d70a0105e0c0813b754379b49d --- media/libstagefright/MediaCodec.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'media/libstagefright/MediaCodec.cpp') diff --git a/media/libstagefright/MediaCodec.cpp b/media/libstagefright/MediaCodec.cpp index 6702a1c..4acbdbe 100644 --- a/media/libstagefright/MediaCodec.cpp +++ b/media/libstagefright/MediaCodec.cpp @@ -515,13 +515,10 @@ void MediaCodec::onMessageReceived(const sp &msg) { name = StringPrintf("data_%d", i); - sp obj; - CHECK(msg->findObject(name.c_str(), &obj)); - BufferInfo info; info.mBufferID = bufferID; - info.mData = static_cast(obj.get()); info.mOwnedByClient = false; + CHECK(msg->findBuffer(name.c_str(), &info.mData)); buffers->push_back(info); } @@ -604,10 +601,8 @@ void MediaCodec::onMessageReceived(const sp &msg) { break; } - sp obj; - CHECK(msg->findObject("buffer", &obj)); - - sp buffer = static_cast(obj.get()); + sp buffer; + CHECK(msg->findBuffer("buffer", &buffer)); int32_t omxFlags; CHECK(msg->findInt32("flags", &omxFlags)); @@ -1118,7 +1113,7 @@ status_t MediaCodec::onQueueInputBuffer(const sp &msg) { info->mData->meta()->setInt32("csd", true); } - reply->setObject("buffer", info->mData); + reply->setBuffer("buffer", info->mData); reply->post(); return OK; -- cgit v1.1