summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/OMXCodec.cpp
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-04-12 10:20:12 -0700
committerAndreas Huber <andih@google.com>2010-04-12 10:20:12 -0700
commit7110385b31c7bc65c8a923a09689ebb0c4a1e07a (patch)
treea2c54b90b8a29c72c1e2128cb9390ee22510d944 /media/libstagefright/OMXCodec.cpp
parent465d5a7f3517f11aaa819c8ae982e113ad5ec479 (diff)
downloadframeworks_av-7110385b31c7bc65c8a923a09689ebb0c4a1e07a.zip
frameworks_av-7110385b31c7bc65c8a923a09689ebb0c4a1e07a.tar.gz
frameworks_av-7110385b31c7bc65c8a923a09689ebb0c4a1e07a.tar.bz2
Fix a case where the aac hardware decoder is in a transition state and refused a fillbuffer request.
Change-Id: I4cabd18709c29db0a2763a01cc86525ba0b0aeb7 related-to-bug: 2575976
Diffstat (limited to 'media/libstagefright/OMXCodec.cpp')
-rw-r--r--media/libstagefright/OMXCodec.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/media/libstagefright/OMXCodec.cpp b/media/libstagefright/OMXCodec.cpp
index 6037088..b9d6fbc 100644
--- a/media/libstagefright/OMXCodec.cpp
+++ b/media/libstagefright/OMXCodec.cpp
@@ -2068,7 +2068,13 @@ void OMXCodec::fillOutputBuffer(BufferInfo *info) {
CODEC_LOGV("Calling fill_buffer on buffer %p", info->mBuffer);
status_t err = mOMX->fillBuffer(mNode, info->mBuffer);
- CHECK_EQ(err, OK);
+
+ if (err != OK) {
+ CODEC_LOGE("fillBuffer failed w/ error 0x%08x", err);
+
+ setState(ERROR);
+ return;
+ }
info->mOwnedByComponent = true;
}