}
r = &receivers[receiver_num];
rn.receiver = r;
+ if (conf.buffer_tree_given)
+ rn.btrn = btr_new_node("receiver", NULL, NULL, NULL);
ret = r->open(&rn);
if (ret < 0)
goto out;
out:
if (r_opened)
r->close(&rn);
- if (r)
- r->shutdown();
+ if (conf.buffer_tree_given) {
+ btr_free_node(rn.btrn);
+ btr_free_node(sot.btrn);
+ }
+ free(rn.conf);
if (ret < 0)
PARA_ERROR_LOG("%s\n", para_strerror(-ret));
return ret < 0? EXIT_FAILURE : EXIT_SUCCESS;