summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Glenn Kasten <gkasten@google.com> 2014-03-28 16:02:26 -0700
committer Glenn Kasten <gkasten@google.com> 2014-04-01 09:46:03 -0700
commit3009f0b911e39d3b26c69bd7667d6444eacb9d11 (patch)
tree210a4ab66706d0d6061cfcdd904841ee0736d4ec
parentdf42723d6b717fd2882c98c930a0f93c75af2474 (diff)
Don't ignore return value of setAuxEffectSendLevel()
Change-Id: I1383c913304430146e6f40d89df623dd0d582e50
-rw-r--r--core/jni/android_media_AudioTrack.cpp13
-rw-r--r--media/java/android/media/AudioTrack.java8
2 files changed, 13 insertions, 8 deletions
diff --git a/core/jni/android_media_AudioTrack.cpp b/core/jni/android_media_AudioTrack.cpp
index 79a46fa268d0..75cb21d2f5dd 100644
--- a/core/jni/android_media_AudioTrack.cpp
+++ b/core/jni/android_media_AudioTrack.cpp
@@ -888,17 +888,22 @@ static jint android_media_AudioTrack_get_min_buff_size(JNIEnv *env, jobject thi
}
// ----------------------------------------------------------------------------
-static void
+static jint
android_media_AudioTrack_setAuxEffectSendLevel(JNIEnv *env, jobject thiz, jfloat level )
{
sp<AudioTrack> lpTrack = getAudioTrack(env, thiz);
if (lpTrack == NULL ) {
jniThrowException(env, "java/lang/IllegalStateException",
"Unable to retrieve AudioTrack pointer for setAuxEffectSendLevel()");
- return;
+ return -1;
}
- lpTrack->setAuxEffectSendLevel(level);
+ status_t status = lpTrack->setAuxEffectSendLevel(level);
+ if (status != NO_ERROR) {
+ ALOGE("AudioTrack::setAuxEffectSendLevel() for level %g failed with status %d",
+ level, status);
+ }
+ return (jint) status;
}
// ----------------------------------------------------------------------------
@@ -954,7 +959,7 @@ static JNINativeMethod gMethods[] = {
{"native_get_min_buff_size",
"(III)I", (void *)android_media_AudioTrack_get_min_buff_size},
{"native_setAuxEffectSendLevel",
- "(F)V", (void *)android_media_AudioTrack_setAuxEffectSendLevel},
+ "(F)I", (void *)android_media_AudioTrack_setAuxEffectSendLevel},
{"native_attachAuxEffect",
"(I)I", (void *)android_media_AudioTrack_attachAuxEffect},
};
diff --git a/media/java/android/media/AudioTrack.java b/media/java/android/media/AudioTrack.java
index 40c6797b3e1e..57bc17135590 100644
--- a/media/java/android/media/AudioTrack.java
+++ b/media/java/android/media/AudioTrack.java
@@ -1321,7 +1321,7 @@ public class AudioTrack
*
* @param level send level scalar
* @return error code or success, see {@link #SUCCESS},
- * {@link #ERROR_INVALID_OPERATION}
+ * {@link #ERROR_INVALID_OPERATION}, {@link #ERROR}
*/
public int setAuxEffectSendLevel(float level) {
if (isRestricted()) {
@@ -1337,8 +1337,8 @@ public class AudioTrack
if (level > getMaxVolume()) {
level = getMaxVolume();
}
- native_setAuxEffectSendLevel(level);
- return SUCCESS;
+ int err = native_setAuxEffectSendLevel(level);
+ return err == 0 ? SUCCESS : ERROR;
}
//---------------------------------------------------------
@@ -1508,7 +1508,7 @@ public class AudioTrack
int sampleRateInHz, int channelConfig, int audioFormat);
private native final int native_attachAuxEffect(int effectId);
- private native final void native_setAuxEffectSendLevel(float level);
+ private native final int native_setAuxEffectSendLevel(float level);
//---------------------------------------------------------
// Utility methods