Prevent segfault when a new node is allocated.
Prevent segfault when a new node is allocated.

Around line 117, `n->flag` is checked and if true `n->u.key` and
`n->val` are freed. If `n` is uninitialized data, `n->flag` may sometimes
be true, and under that circumstance a segfault occurs during
`free(n->u.key)` or `free(n->val)`.

troglobit/mdnsd,troglobit/mdnsd