From 965129b5b760e42bdb825504770c468e8762d8e1 Mon Sep 17 00:00:00 2001 From: Con Kolivas Date: Thu, 2 May 2013 17:26:59 +1000 Subject: [PATCH] Duplicate the name string always in api_add_data_full to not need persistent storage for names passed to it. --- api.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/api.c b/api.c index 427ef074..d19daff6 100644 --- a/api.c +++ b/api.c @@ -827,7 +827,7 @@ static struct api_data *api_add_data_full(struct api_data *root, char *name, enu api_data = (struct api_data *)malloc(sizeof(struct api_data)); - api_data->name = name; + api_data->name = strdup(name); api_data->type = type; if (root == NULL) { @@ -1116,6 +1116,7 @@ static struct api_data *print_data(struct api_data *root, char *buf, bool isjson buf = strchr(buf, '\0'); + free(root->name); if (root->data_was_malloc) free(root->data);