diff options
author | James Dong <jdong@google.com> | 2010-02-26 18:56:22 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-02-26 18:56:22 -0800 |
commit | e3d91046072908f5613a21652b6da9b44043f1d5 (patch) | |
tree | 7df2c4f76748807e0559accaddccc8e767d848b9 /media/libmedia | |
parent | 698f476590bc9e38d4d1d4155da9efdbedd357c4 (diff) | |
parent | e284bac7757ad732d0812eb6133125434ba66d5b (diff) | |
download | frameworks_av-e3d91046072908f5613a21652b6da9b44043f1d5.zip frameworks_av-e3d91046072908f5613a21652b6da9b44043f1d5.tar.gz frameworks_av-e3d91046072908f5613a21652b6da9b44043f1d5.tar.bz2 |
Merge "Don't allow MediaRecorder.setParameter() to be invoked in the following states: error, prepared or recording"
Diffstat (limited to 'media/libmedia')
-rw-r--r-- | media/libmedia/mediarecorder.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/media/libmedia/mediarecorder.cpp b/media/libmedia/mediarecorder.cpp index 23024e9..5adc116 100644 --- a/media/libmedia/mediarecorder.cpp +++ b/media/libmedia/mediarecorder.cpp @@ -365,6 +365,15 @@ status_t MediaRecorder::setParameters(const String8& params) { return INVALID_OPERATION; } + bool isInvalidState = (mCurrentState & + (MEDIA_RECORDER_PREPARED | + MEDIA_RECORDER_RECORDING | + MEDIA_RECORDER_ERROR)); + if (isInvalidState) { + LOGE("setParameters is called in an invalid state: %d", mCurrentState); + return INVALID_OPERATION; + } + status_t ret = mMediaRecorder->setParameters(params); if (OK != ret) { LOGE("setParameters(%s) failed: %d", params.string(), ret); |