From bce4c365bcd45eab76da967fd72732b79bbc1f57 Mon Sep 17 00:00:00 2001 From: Thiago de Arruda Date: Thu, 26 Jun 2014 15:55:20 -0300 Subject: job: No longer free the job data. It's now done by the exit callback --- src/nvim/eval.c | 1 + src/nvim/os/channel.c | 7 +------ src/nvim/os/job.c | 1 - 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/nvim/eval.c b/src/nvim/eval.c index ec80be36c5..428f1430b3 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -19085,6 +19085,7 @@ static void on_job_stderr(RStream *rstream, void *data, bool eof) static void on_job_exit(Job *job, void *data) { apply_job_autocmds(job, data, "exit", NULL); + free(data); } static void on_job_data(RStream *rstream, void *data, bool eof, char *type) diff --git a/src/nvim/os/channel.c b/src/nvim/os/channel.c index 9e2c812a3f..439487f30b 100644 --- a/src/nvim/os/channel.c +++ b/src/nvim/os/channel.c @@ -92,7 +92,7 @@ uint64_t channel_from_job(char **argv) channel, job_out, job_err, - job_exit, + NULL, true, 0, &status); @@ -275,11 +275,6 @@ static void job_err(RStream *rstream, void *data, bool eof) // TODO(tarruda): plugin error messages should be sent to the error buffer } -static void job_exit(Job *job, void *data) -{ - // TODO(tarruda): what should be done here? -} - static void parse_msgpack(RStream *rstream, void *data, bool eof) { Channel *channel = data; diff --git a/src/nvim/os/job.c b/src/nvim/os/job.c index d2f9c10981..2f5b257b91 100644 --- a/src/nvim/os/job.c +++ b/src/nvim/os/job.c @@ -408,7 +408,6 @@ static void close_cb(uv_handle_t *handle) rstream_free(job->err); wstream_free(job->in); shell_free_argv(job->proc_opts.args); - free(job->data); free(job); } } -- cgit