static void writer_cleanup(struct writer_node *wn)
{
- struct writer *w = writers + wn->writer_num;
+ struct writer *w;
+ if (!wn)
+ return;
+ w = writers + wn->writer_num;
+ PARA_INFO_LOG("closing %s\n", writer_names[wn->writer_num]);
w->close(wn);
btr_free_node(wn->btrn);
}
return;
for (i = 0; i < a->num_filters; i++) {
struct filter_node *fn = s->fns + i;
- struct filter *f = filters + fn->filter_num;
+ struct filter *f;
+ if (!fn)
+ continue;
+ f = filters + fn->filter_num;
f->close(fn);
btr_free_node(fn->btrn);
}