mirror of
https://github.com/tmux/tmux.git
synced 2025-09-03 14:27:09 +00:00
Sync OpenBSD patchset 290:
When using source-file, run the commands in the context of the source-file command rather than with no context. This makes things like attach work from a file.
This commit is contained in:
17
cfg.c
17
cfg.c
@ -1,4 +1,4 @@
|
||||
/* $Id: cfg.c,v 1.21 2009-08-24 16:24:18 tcunha Exp $ */
|
||||
/* $Id: cfg.c,v 1.22 2009-08-24 16:27:03 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2008 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -51,7 +51,7 @@ cfg_error(unused struct cmd_ctx *ctx, const char *fmt, ...)
|
||||
}
|
||||
|
||||
int
|
||||
load_cfg(const char *path, char **cause)
|
||||
load_cfg(const char *path, struct cmd_ctx *ctxin, char **cause)
|
||||
{
|
||||
FILE *f;
|
||||
u_int n;
|
||||
@ -87,15 +87,20 @@ load_cfg(const char *path, char **cause)
|
||||
continue;
|
||||
cfg_cause = NULL;
|
||||
|
||||
ctx.msgdata = NULL;
|
||||
ctx.curclient = NULL;
|
||||
if (ctxin == NULL) {
|
||||
ctx.msgdata = NULL;
|
||||
ctx.curclient = NULL;
|
||||
ctx.cmdclient = NULL;
|
||||
} else {
|
||||
ctx.msgdata = ctxin->msgdata;
|
||||
ctx.curclient = ctxin->curclient;
|
||||
ctx.cmdclient = ctxin->cmdclient;
|
||||
}
|
||||
|
||||
ctx.error = cfg_error;
|
||||
ctx.print = cfg_print;
|
||||
ctx.info = cfg_print;
|
||||
|
||||
ctx.cmdclient = NULL;
|
||||
|
||||
cfg_cause = NULL;
|
||||
cmd_list_exec(cmdlist, &ctx);
|
||||
cmd_list_free(cmdlist);
|
||||
|
Reference in New Issue
Block a user