From e527007394286dc6af6c76d13d1e0ccbe052703b Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Mon, 30 Dec 2013 22:31:08 +0000 Subject: [PATCH] task_register() conversion: i9e task --- client.c | 1 + interactive.c | 15 +++++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/client.c b/client.c index 56e7cc5c..349f970d 100644 --- a/client.c +++ b/client.c @@ -495,6 +495,7 @@ __noreturn static void interactive_session(void) goto out; para_log = i9e_log; ret = schedule(&sched); + sched_shutdown(&sched); i9e_close(); para_log = stderr_log; out: diff --git a/interactive.c b/interactive.c index 9f2b7195..5d3303d7 100644 --- a/interactive.c +++ b/interactive.c @@ -29,7 +29,7 @@ struct i9e_private { FILE *stderr_stream; int num_columns; char empty_line[1000]; - struct task task; + struct task *task; struct btr_node *stdout_btrn; bool last_write_was_status; bool line_handler_running; @@ -52,7 +52,7 @@ static struct i9e_private i9e_private, *i9ep = &i9e_private; */ int i9e_get_error(void) { - return i9ep->task.error; + return i9ep->task->error; } static bool is_prefix(const char *partial, const char *full, size_t len) @@ -453,10 +453,13 @@ int i9e_open(struct i9e_client_info *ici, struct sched *s) ret = mark_fd_nonblocking(ici->fds[1]); if (ret < 0) return ret; - i9ep->task.pre_select = i9e_pre_select; - i9ep->task.post_select = i9e_post_select; - sprintf(i9ep->task.status, "i9e"); - register_task(s, &i9ep->task); + i9ep->task = task_register(&(struct task_info) { + .name = "i9e", + .pre_select = i9e_pre_select, + .post_select = i9e_post_select, + .context = i9ep, + }, s); + rl_readline_name = "para_i9e"; rl_basic_word_break_characters = " "; rl_attempted_completion_function = i9e_completer; -- 2.39.2