summaryrefslogtreecommitdiff
path: root/jcnf/jcnf.c
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff-webhosting.net>2017-12-01 10:32:14 +0100
committerJörg Frings-Fürst <debian@jff-webhosting.net>2017-12-01 10:32:14 +0100
commit4097e27114d227692d53c5d28487e12a3833cd24 (patch)
treed5c2a62c4db97de94f92150340612c64d3997669 /jcnf/jcnf.c
parentf8a0a4e1c775a90c313cb83201eec4cea4e9a7da (diff)
parent5514d94483c98e3320b202b1bb882023a7d12027 (diff)
Merge branch 'feature/upstream' into develop
Diffstat (limited to 'jcnf/jcnf.c')
-rwxr-xr-x[-rw-r--r--]jcnf/jcnf.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/jcnf/jcnf.c b/jcnf/jcnf.c
index 799be7c..273796e 100644..100755
--- a/jcnf/jcnf.c
+++ b/jcnf/jcnf.c
@@ -413,6 +413,7 @@ static jc_error jcnf_delete_key(
if ((ix+1) < p->nkeys) {
memmove(p->keys+ix, p->keys+ix+1,sizeof(jc_key *) * p->nkeys-ix-1);
}
+ free(p->keys[p->nkeys-1]);
p->nkeys--;
p->modified = 1;
@@ -607,6 +608,7 @@ static int jcnf_yajl_start_map(void *ctx) {
return 1;
}
+/* Callback from yajl */
static int jcnf_yajl_map_key(void *ctx, const unsigned char * stringVal,
size_t stringLen) {
jcnf *p = (jcnf *)ctx;
@@ -650,6 +652,8 @@ static int jcnf_yajl_end_map(void *ctx) {
/* End of map without start of map */
return 0;
}
+ if (p->recds[p->nrecd-1].key != NULL)
+ free(p->recds[p->nrecd-1].key);
p->nrecd--;
#ifdef NEVER