diff options
author | Szymon Janc <szymon.janc@tieto.com> | 2015-02-09 11:31:36 +0100 |
---|---|---|
committer | Szymon Janc <szymon.janc@tieto.com> | 2015-02-09 15:12:32 +0100 |
commit | e8ef259138c35552134f4e40b5616caa6d81c21c (patch) | |
tree | c251a0b4a76092d2545c81ad12b932fe9b0151d5 /android/handsfree.c | |
parent | 95b70f30a696f8294a19c1e4af7cfc1776ce551f (diff) | |
download | bluez-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.c | 7 |
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) |