CGDCONT result parsing fails if first list contains several ranges. For example with modem Cinterion PHS8:
AT+CGDCONT=? +CGDCONT: (1-17,101-116),"IP",,,(0),(0-4) Solution: read first range and jump to second list instead of trying to close the brackets. --- drivers/atmodem/gprs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/atmodem/gprs.c b/drivers/atmodem/gprs.c index 5ee757a..5724f86 100644 --- a/drivers/atmodem/gprs.c +++ b/drivers/atmodem/gprs.c @@ -522,7 +522,7 @@ static void at_cgdcont_test_cb(gboolean ok, GAtResult *result, if (g_at_result_iter_next_range(&iter, &min, &max) == FALSE) continue; - if (!g_at_result_iter_close_list(&iter)) + if (!g_at_result_iter_skip_next(&iter)) continue; if (g_at_result_iter_open_list(&iter)) -- 1.9.1 _______________________________________________ ofono mailing list ofono@ofono.org https://lists.ofono.org/mailman/listinfo/ofono