summaryrefslogtreecommitdiff
path: root/android/handsfree.c
diff options
context:
space:
mode:
authorSzymon Janc <szymon.janc@tieto.com>2015-02-09 11:31:36 +0100
committerSzymon Janc <szymon.janc@tieto.com>2015-02-09 15:12:32 +0100
commite8ef259138c35552134f4e40b5616caa6d81c21c (patch)
treec251a0b4a76092d2545c81ad12b932fe9b0151d5 /android/handsfree.c
parent95b70f30a696f8294a19c1e4af7cfc1776ce551f (diff)
downloadbluez-e8ef259138c35552134f4e40b5616caa6d81c21c.tar.gz
android/handsfree: Relax AT+CMER handling
Spec says that HF may (not should) use AT+CMER=3,0,0,1 command to activate indicators. Since AT+CMER has additional bfr parameter that may be send by HF we should just skip it instead of failing. This fix connection with Jaguar XF 2009 carkit.
Diffstat (limited to 'android/handsfree.c')
-rw-r--r--android/handsfree.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/android/handsfree.c b/android/handsfree.c
index 4020ed58d..4af2a8903 100644
--- a/android/handsfree.c
+++ b/android/handsfree.c
@@ -1197,11 +1197,14 @@ static void at_cmd_cmer(struct hfp_context *result, enum hfp_gw_cmd_type type,
if (!hfp_context_get_number(result, &val) || val > 1)
break;
+ dev->indicators_enabled = val;
+
+ /* skip bfr if present */
+ hfp_context_get_number(result, &val);
+
if (hfp_context_has_next(result))
break;
- dev->indicators_enabled = val;
-
hfp_gw_send_result(dev->gw, HFP_RESULT_OK);
if (dev->features & HFP_HF_FEAT_3WAY)