summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorJames Dong <jdong@google.com>2011-09-01 19:31:01 -0700
committerJames Dong <jdong@google.com>2011-09-01 19:39:18 -0700
commit97857479de48fda4c33bb415b2fbb15193f768e8 (patch)
treec17c7c6fc443508a0a34db15e9ef566e02463a56 /media
parentd942202ee0c92608c648735c3ad0f1bab4312420 (diff)
downloadframeworks_av-97857479de48fda4c33bb415b2fbb15193f768e8.zip
frameworks_av-97857479de48fda4c33bb415b2fbb15193f768e8.tar.gz
frameworks_av-97857479de48fda4c33bb415b2fbb15193f768e8.tar.bz2
Don't overwrite pending port setting change if there are more than one port setting change event.
Change-Id: I3413f5235b191031252aa3785f5aaef00caef1ce related-to-bug: 5122512
Diffstat (limited to 'media')
-rwxr-xr-xmedia/libstagefright/OMXCodec.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/media/libstagefright/OMXCodec.cpp b/media/libstagefright/OMXCodec.cpp
index d5b013d..fb49d7b 100755
--- a/media/libstagefright/OMXCodec.cpp
+++ b/media/libstagefright/OMXCodec.cpp
@@ -2442,8 +2442,10 @@ void OMXCodec::onCmdComplete(OMX_COMMANDTYPE cmd, OMX_U32 data) {
// Don't notify clients if the output port settings change
// wasn't of importance to them, i.e. it may be that just the
// number of buffers has changed and nothing else.
- mOutputPortSettingsHaveChanged =
- formatHasNotablyChanged(oldOutputFormat, mOutputFormat);
+ bool formatChanged = formatHasNotablyChanged(oldOutputFormat, mOutputFormat);
+ if (!mOutputPortSettingsHaveChanged) {
+ mOutputPortSettingsHaveChanged = formatChanged;
+ }
enablePortAsync(portIndex);