]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - filter.c
task_register() conversion: filter tasks
[paraslash.git] / filter.c
index 7e3575faa36e4e04b804fc988b04c2df716e9531..55afbd3225ff84a74ad20d57b5cfc27c8c7f71cc 100644 (file)
--- a/filter.c
+++ b/filter.c
@@ -118,6 +118,7 @@ int main(int argc, char *argv[])
        for (i = 0, parent = sit->btrn; i < conf.filter_given; i++) {
                char *fa = conf.filter_arg[i];
                struct filter_node *fn;
+               struct task_info ti;
 
                fn = fns[i] = para_calloc(sizeof(*fn));
                ret = check_filter_arg(fa, &fn->conf);
@@ -127,15 +128,16 @@ int main(int argc, char *argv[])
                }
                fn->filter_num = ret;
                f = filters + fn->filter_num;
-               sprintf(fn->task.status, "%s", f->name);
                PARA_DEBUG_LOG("filter #%d: %s\n", i, f->name);
                fn->btrn = btr_new_node(&(struct btr_node_description)
                        EMBRACE(.name = f->name, .parent = parent,
                        .handler = f->execute, .context = fn));
-               fn->task.pre_select = f->pre_select;
-               fn->task.post_select = f->post_select;
+               ti.name = f->name;
+               ti.pre_select = f->pre_select;
+               ti.post_select = f->post_select;
+               ti.context = fn;
                f->open(fn);
-               register_task(&s, &fn->task);
+               fn->task = task_register(&ti, &s);
                parent = fn->btrn;
        }
        sot->btrn = btr_new_node(&(struct btr_node_description)