summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Huber <andih@google.com>2010-05-13 11:16:43 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-05-13 11:16:43 -0700
commit28fadef2ede2d74e9526266e779553bbd1dc66f4 (patch)
tree1c2854a1d3fb85626551cf558866a31f673a11cd
parent1a3b3d48413d9134738c9b457292fb2b71a5dfe4 (diff)
parent3c78a1b58957e31d2991fb6a609abecbb1987b3b (diff)
downloadframeworks_base-28fadef2ede2d74e9526266e779553bbd1dc66f4.zip
frameworks_base-28fadef2ede2d74e9526266e779553bbd1dc66f4.tar.gz
frameworks_base-28fadef2ede2d74e9526266e779553bbd1dc66f4.tar.bz2
am 3c78a1b5: Return a runtime error instead of asserting if the AACDecoder is passed an unsupported config.
Merge commit '3c78a1b58957e31d2991fb6a609abecbb1987b3b' into froyo-plus-aosp * commit '3c78a1b58957e31d2991fb6a609abecbb1987b3b': Return a runtime error instead of asserting if the AACDecoder is passed an unsupported config.
-rw-r--r--media/libstagefright/AwesomePlayer.cpp7
-rw-r--r--media/libstagefright/codecs/aacdec/AACDecoder.cpp6
2 files changed, 10 insertions, 3 deletions
diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp
index 475160e..f668caa 100644
--- a/media/libstagefright/AwesomePlayer.cpp
+++ b/media/libstagefright/AwesomePlayer.cpp
@@ -778,7 +778,12 @@ status_t AwesomePlayer::initAudioDecoder() {
}
}
- mAudioSource->start();
+ status_t err = mAudioSource->start();
+
+ if (err != OK) {
+ mAudioSource.clear();
+ return err;
+ }
} else if (!strcasecmp(mime, MEDIA_MIMETYPE_AUDIO_QCELP)) {
// For legacy reasons we're simply going to ignore the absence
// of an audio decoder for QCELP instead of aborting playback
diff --git a/media/libstagefright/codecs/aacdec/AACDecoder.cpp b/media/libstagefright/codecs/aacdec/AACDecoder.cpp
index ae23691..2bc4448 100644
--- a/media/libstagefright/codecs/aacdec/AACDecoder.cpp
+++ b/media/libstagefright/codecs/aacdec/AACDecoder.cpp
@@ -90,8 +90,10 @@ status_t AACDecoder::start(MetaData *params) {
mConfig->pOutputBuffer_plus = NULL;
mConfig->repositionFlag = false;
- CHECK_EQ(PVMP4AudioDecoderConfig(mConfig, mDecoderBuf),
- MP4AUDEC_SUCCESS);
+ if (PVMP4AudioDecoderConfig(mConfig, mDecoderBuf)
+ != MP4AUDEC_SUCCESS) {
+ return ERROR_UNSUPPORTED;
+ }
}
mSource->start();