From 72fa71e6f7d984d5e59156b548a9f36cadaf841d Mon Sep 17 00:00:00 2001 From: Jan-Piet Mens Date: Thu, 12 Nov 2015 19:21:14 +0100 Subject: [PATCH] remove 'r' from waypoints dump closes #71 --- recorder.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/recorder.c b/recorder.c index b128046..1806ed9 100644 --- a/recorder.c +++ b/recorder.c @@ -393,7 +393,21 @@ void config_dump(struct udata *ud, UT_string *username, UT_string *device, char /* Dump a waypoints (plural) payload */ void waypoints_dump(struct udata *ud, UT_string *username, UT_string *device, char *payloadstring) { - xx_dump(ud, username, device, payloadstring, "waypoints", "otrw"); + JsonNode *json = json_decode(payloadstring), *j; + char *js = NULL; + + if (json == NULL) + return; + + if ((j = json_find_member(json, "r")) != NULL) { + json_remove_from_parent(j); + js = json_stringify(json, NULL); + json_delete(json); + } + + xx_dump(ud, username, device, (js) ? js : payloadstring, "waypoints", "otrw"); + if (js) + free(js); } #ifdef WITH_RONLY