Merge "hal: Fix ANR if In-Call recording is started at end of voice call"
diff --git a/hal/voice.c b/hal/voice.c
index 5bc0a4e..01158dd 100644
--- a/hal/voice.c
+++ b/hal/voice.c
@@ -293,6 +293,18 @@
session_id, rec_mode);
ALOGV("%s: Update usecase to %d",__func__, in->usecase);
} else {
+ /*
+ * Reject the recording instances, where the recording is started
+ * with In-call voice recording source types but voice call is not
+ * active by the time input is started
+ */
+ if ((in->source == AUDIO_SOURCE_VOICE_UPLINK) ||
+ (in->source == AUDIO_SOURCE_VOICE_DOWNLINK) ||
+ (in->source == AUDIO_SOURCE_VOICE_CALL)) {
+ ret = -EINVAL;
+ ALOGE("%s: As voice call is not active, Incall rec usecase can't be \
+ selected for requested source:%d",__func__, in->source);
+ }
ALOGV("%s: voice call not active", __func__);
}