diff options
author | Eric Laurent <elaurent@google.com> | 2010-09-21 15:59:23 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-09-21 15:59:23 -0700 |
commit | 6943b94b8f267c83060946bae0961efc30444dee (patch) | |
tree | 01e3342339e2d8fde807afc315196c04bfac7d27 /media/java | |
parent | aa522ac8ba18475f9a05b04918cd9d1a5cd2f77e (diff) | |
parent | a6dc4699222a484222d1c54d5319f302a02e406b (diff) | |
download | frameworks_base-6943b94b8f267c83060946bae0961efc30444dee.zip frameworks_base-6943b94b8f267c83060946bae0961efc30444dee.tar.gz frameworks_base-6943b94b8f267c83060946bae0961efc30444dee.tar.bz2 |
am a6dc4699: Merge "Fix issue 2913071." into gingerbread
Merge commit 'a6dc4699222a484222d1c54d5319f302a02e406b' into gingerbread-plus-aosp
* commit 'a6dc4699222a484222d1c54d5319f302a02e406b':
Fix issue 2913071.
Diffstat (limited to 'media/java')
-rwxr-xr-x | media/java/android/media/Visualizer.java | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/media/java/android/media/Visualizer.java b/media/java/android/media/Visualizer.java index 453fc04..33222ff 100755 --- a/media/java/android/media/Visualizer.java +++ b/media/java/android/media/Visualizer.java @@ -218,13 +218,16 @@ public class Visualizer { public int setEnabled(boolean enabled) throws IllegalStateException { synchronized (mStateLock) { - if ((enabled && mState != STATE_INITIALIZED) || - (!enabled && mState != STATE_ENABLED)) { + if (mState == STATE_UNINITIALIZED) { throw(new IllegalStateException("setEnabled() called in wrong state: "+mState)); } - int status = native_setEnabled(enabled); - if (status == SUCCESS) { - mState = enabled ? STATE_ENABLED : STATE_INITIALIZED; + int status = SUCCESS; + if ((enabled && (mState == STATE_INITIALIZED)) || + (!enabled && (mState == STATE_ENABLED))) { + status = native_setEnabled(enabled); + if (status == SUCCESS) { + mState = enabled ? STATE_ENABLED : STATE_INITIALIZED; + } } return status; } |