Some vendors might print trailing spaces after unsolicited result codes.
Avoid duplicating and stripping the string after calling
g_at_result_iter_next_unquoted_string() by stripping the spaces in
gatresult instead.
---
gatchat/gatresult.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/gatchat/gatresult.c b/gatchat/gatresult.c
index 2659db28..883b4105 100644
--- a/gatchat/gatresult.c
+++ b/gatchat/gatresult.c
@@ -111,6 +111,7 @@ gboolean
g_at_result_iter_next_unquoted_string(GAtResultIter *iter,
unsigned int pos;
unsigned int end;
unsigned int len;
+ unsigned int stripped;
char *line;
if (iter == NULL)
@@ -139,7 +140,12 @@ gboolean
g_at_result_iter_next_unquoted_string(GAtResultIter *iter,
while (end < len && line[end] != ',' && line[end] != ')')
end += 1;
- iter->buf[end] = '\0';
+ stripped = end;
+
+ while (line[stripped - 1] == ' ')
+ stripped -= 1;
+
+ iter->buf[stripped] = '\0';
out:
iter->line_pos = skip_to_next_field(line, end, len);
--
2.22.0
_______________________________________________
ofono mailing list
[email protected]
https://lists.ofono.org/mailman/listinfo/ofono