diff --git a/core/jni/android_media_AudioSystem.cpp b/core/jni/android_media_AudioSystem.cpp index 7c4c97036bd83..5eb1e00947254 100644 --- a/core/jni/android_media_AudioSystem.cpp +++ b/core/jni/android_media_AudioSystem.cpp @@ -1930,7 +1930,11 @@ android_media_AudioSystem_startAudioSource(JNIEnv *env, jobject clazz, audio_port_handle_t handle; status_t status = AudioSystem::startAudioSource(&nAudioPortConfig, paa.get(), &handle); ALOGV("AudioSystem::startAudioSource() returned %d handle %d", status, handle); - return handle > 0 ? handle : nativeToJavaStatus(status); + if (status != NO_ERROR) { + return nativeToJavaStatus(status); + } + ALOG_ASSERT(handle > 0, "%s: invalid handle reported on successful call", __func__); + return handle; } static jint