diff options
author | Marco Nelissen <marcone@google.com> | 2013-05-09 09:15:34 -0700 |
---|---|---|
committer | Marco Nelissen <marcone@google.com> | 2013-05-10 08:17:09 -0700 |
commit | b6ac8e2ce3574160714fd3c0c6d6b5fbf6c8eeab (patch) | |
tree | 1bb4840ad3429f7d4cc4b399f3e354db7dfe01ea /media | |
parent | 9d75e9928f0fd49c4a0764ab71eb00636848c87a (diff) | |
download | frameworks_av-b6ac8e2ce3574160714fd3c0c6d6b5fbf6c8eeab.zip frameworks_av-b6ac8e2ce3574160714fd3c0c6d6b5fbf6c8eeab.tar.gz frameworks_av-b6ac8e2ce3574160714fd3c0c6d6b5fbf6c8eeab.tar.bz2 |
Don't render buffers that have size 0
b/8857451
Change-Id: I12a31a2f85af76602db9e6f0ec80632954b3f7ed
Diffstat (limited to 'media')
-rw-r--r-- | media/libstagefright/ACodec.cpp | 3 | ||||
-rw-r--r-- | media/libstagefright/MediaCodec.cpp | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/media/libstagefright/ACodec.cpp b/media/libstagefright/ACodec.cpp index 058852e..994d3f4 100644 --- a/media/libstagefright/ACodec.cpp +++ b/media/libstagefright/ACodec.cpp @@ -3131,7 +3131,8 @@ void ACodec::BaseState::onOutputBufferDrained(const sp<AMessage> &msg) { int32_t render; if (mCodec->mNativeWindow != NULL - && msg->findInt32("render", &render) && render != 0) { + && msg->findInt32("render", &render) && render != 0 + && (info->mData == NULL || info->mData->size() != 0)) { // The client wants this buffer to be rendered. status_t err; diff --git a/media/libstagefright/MediaCodec.cpp b/media/libstagefright/MediaCodec.cpp index 714da55..f412dc8 100644 --- a/media/libstagefright/MediaCodec.cpp +++ b/media/libstagefright/MediaCodec.cpp @@ -1656,7 +1656,7 @@ status_t MediaCodec::onReleaseOutputBuffer(const sp<AMessage> &msg) { return -EACCES; } - if (render) { + if (render && (info->mData == NULL || info->mData->size() != 0)) { info->mNotify->setInt32("render", true); if (mSoftRenderer != NULL) { |