}
r = &receivers[receiver_num];
rn.receiver = r;
- rn.btr_root = btr_new_node("receiver", NULL /* no parent */);
ret = r->open(&rn);
if (ret < 0)
goto out;
r_opened = 1;
+ if (conf.buffer_tree_given)
+ sot.btrn = btr_new_node("stdout", rn.btrn, NULL, NULL);
+
stdout_set_defaults(&sot);
sot.bufp = &rn.buf;
sot.loaded = &rn.loaded;
ret = schedule(&s);
out:
- if (r_opened) {
- btr_del_node(rn.btr_root);
+ if (conf.buffer_tree_given)
+ btr_free_node(sot.btrn);
+ if (r_opened)
r->close(&rn);
- }
if (r)
r->shutdown();
if (ret < 0)