Add a flag for jobs that shouldn't be freed after they've died and use it for

status jobs, then only kill those jobs when status-left, status-right or
set-titles-string is changed.

Fixes problems with changing options from inside #().
This commit is contained in:
Nicholas Marriott
2009-11-01 23:20:37 +00:00
parent 32299e4010
commit 2f813ef75d
8 changed files with 63 additions and 19 deletions

View File

@ -65,7 +65,7 @@ cmd_run_shell_exec(struct cmd *self, struct cmd_ctx *ctx)
if (ctx->curclient != NULL)
ctx->curclient->references++;
job = job_add(NULL, NULL,
job = job_add(NULL, 0, NULL,
data->arg, cmd_run_shell_callback, cmd_run_shell_free, cdata);
job_run(job);
@ -117,8 +117,6 @@ cmd_run_shell_callback(struct job *job)
ctx->info(ctx, "%s", msg);
xfree(msg);
}
job_free(job); /* calls cmd_run_shell_free */
}
void