summaryrefslogtreecommitdiffstats
path: root/media/java
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2010-09-21 15:59:23 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2010-09-21 15:59:23 -0700
commit6943b94b8f267c83060946bae0961efc30444dee (patch)
tree01e3342339e2d8fde807afc315196c04bfac7d27 /media/java
parentaa522ac8ba18475f9a05b04918cd9d1a5cd2f77e (diff)
parenta6dc4699222a484222d1c54d5319f302a02e406b (diff)
downloadframeworks_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-xmedia/java/android/media/Visualizer.java13
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;
}