diff options
Diffstat (limited to 'btree-str.c')
-rw-r--r-- | btree-str.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/btree-str.c b/btree-str.c index 1e0903a..ff2338e 100644 --- a/btree-str.c +++ b/btree-str.c @@ -42,6 +42,7 @@ void fn(Node *n) { fn(n->l); if (n->r) fn(n->r); + free(n->v); free(n); return; } @@ -50,8 +51,13 @@ int main(int argc, char **argv) { Node *r = NULL; for (argv++, argc--; argc; argv++, argc--) { + unsigned long l = 0; Node *n = malloc(sizeof(Node)); - n->v = *argv; + + l = strlen(*argv) + 1; + n->v = malloc(l); + strncpy(n->v, *argv, l); + n->l = n->r = NULL; an(&r, n); } |