mirror of
https://github.com/tmux/tmux.git
synced 2024-11-05 10:28:48 +00:00
Merge branch 'obsd-master'
This commit is contained in:
commit
95f5d406e5
10
cfg.c
10
cfg.c
@ -27,11 +27,11 @@
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
char *cfg_file;
|
||||
int cfg_finished;
|
||||
static char **cfg_causes;
|
||||
static u_int cfg_ncauses;
|
||||
struct client *cfg_client;
|
||||
char *cfg_file;
|
||||
int cfg_finished;
|
||||
static char **cfg_causes;
|
||||
static u_int cfg_ncauses;
|
||||
struct client *cfg_client;
|
||||
|
||||
static enum cmd_retval
|
||||
cfg_done(__unused struct cmdq_item *item, __unused void *data)
|
||||
|
@ -18,7 +18,10 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
|
||||
#include <errno.h>
|
||||
#include <glob.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "tmux.h"
|
||||
|
||||
@ -48,23 +51,30 @@ cmd_source_file_exec(struct cmd *self, struct cmdq_item *item)
|
||||
struct client *c = item->client;
|
||||
int quiet;
|
||||
struct cmdq_item *new_item;
|
||||
enum cmd_retval retval;
|
||||
glob_t g;
|
||||
int i;
|
||||
|
||||
quiet = args_has(args, 'q');
|
||||
switch (load_cfg(args->argv[0], c, item, quiet)) {
|
||||
case -1:
|
||||
if (cfg_finished)
|
||||
cfg_print_causes(item);
|
||||
if (glob(args->argv[0], 0, NULL, &g) != 0) {
|
||||
if (quiet && errno == ENOENT)
|
||||
return (CMD_RETURN_NORMAL);
|
||||
cmdq_error(item, "%s: %s", args->argv[0], strerror(errno));
|
||||
return (CMD_RETURN_ERROR);
|
||||
case 0:
|
||||
if (cfg_finished)
|
||||
cfg_print_causes(item);
|
||||
return (CMD_RETURN_NORMAL);
|
||||
}
|
||||
|
||||
retval = CMD_RETURN_NORMAL;
|
||||
for (i = 0; i < g.gl_pathc; i++) {
|
||||
if (load_cfg(g.gl_pathv[i], c, item, quiet) != 0)
|
||||
retval = CMD_RETURN_ERROR;
|
||||
}
|
||||
if (cfg_finished) {
|
||||
new_item = cmdq_get_callback(cmd_source_file_done, NULL);
|
||||
cmdq_insert_after(item, new_item);
|
||||
}
|
||||
return (CMD_RETURN_NORMAL);
|
||||
|
||||
globfree(&g);
|
||||
return (retval);
|
||||
}
|
||||
|
||||
static enum cmd_retval
|
||||
|
5
tmux.1
5
tmux.1
@ -925,7 +925,10 @@ show debugging information about jobs and terminals.
|
||||
.Xc
|
||||
.D1 (alias: Ic source )
|
||||
Execute commands from
|
||||
.Ar path .
|
||||
.Ar path
|
||||
(which may be a
|
||||
.Xr glob 3
|
||||
pattern).
|
||||
If
|
||||
.Fl q
|
||||
is given, no error will be returned if
|
||||
|
Loading…
Reference in New Issue
Block a user