summaryrefslogtreecommitdiffstats
path: root/drivers/isimodem
diff options
context:
space:
mode:
authorJarko Poutiainen <jarko.poutiainen@tieto.com>2012-09-10 15:16:07 +0300
committerDenis Kenzior <denkenz@gmail.com>2012-09-11 23:29:43 -0500
commitdc2dc41bcf225e4dba0cbdadd238d6d8f49203ca (patch)
tree4477a456ed80c79e5e90528c489fa452e4b5dfca /drivers/isimodem
parentc0a4b69e7e716a694c4e9b3c9247c885ec982f94 (diff)
downloadofono-dc2dc41bcf225e4dba0cbdadd238d6d8f49203ca.tar.bz2
isimodem: voicecall answer fix for Nemo on N9
Voicecall answering in Mer/Nemomobile run on Nokia N9 will fail unless call id is passed to modem.
Diffstat (limited to 'drivers/isimodem')
-rw-r--r--drivers/isimodem/voicecall.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/drivers/isimodem/voicecall.c b/drivers/isimodem/voicecall.c
index 2f38f68a..b5496871 100644
--- a/drivers/isimodem/voicecall.c
+++ b/drivers/isimodem/voicecall.c
@@ -1504,7 +1504,20 @@ static void isi_dial(struct ofono_voicecall *ovc,
static void isi_answer(struct ofono_voicecall *ovc, ofono_voicecall_cb_t cb,
void *data)
{
- isi_call_answer_req(ovc, CALL_ID_ALL, cb, data);
+ struct isi_voicecall *ivc = ofono_voicecall_get_data(ovc);
+ int id;
+
+ for (id = 1; id <= 7; id++) {
+
+ if (ivc->calls[id].status == CALL_STATUS_MT_ALERTING)
+ goto answer_by_id;
+
+ }
+
+ id = CALL_ID_ALL;
+
+answer_by_id:
+ isi_call_answer_req(ovc, id, cb, data);
}
static void isi_hangup_current(struct ofono_voicecall *ovc,