summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--usr.bin/tmux/cmd.c21
-rw-r--r--usr.bin/tmux/spawn.c4
-rw-r--r--usr.bin/tmux/tmux.h4
3 files changed, 18 insertions, 11 deletions
diff --git a/usr.bin/tmux/cmd.c b/usr.bin/tmux/cmd.c
index 317ec15e251..e3d95329602 100644
--- a/usr.bin/tmux/cmd.c
+++ b/usr.bin/tmux/cmd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd.c,v 1.149 2019/05/23 11:13:30 nicm Exp $ */
+/* $OpenBSD: cmd.c,v 1.150 2019/05/25 06:58:10 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -205,13 +205,20 @@ const struct cmd_entry *cmd_table[] = {
NULL
};
-void
-cmd_log_argv(int argc, char **argv, const char *prefix)
+void printflike(3, 4)
+cmd_log_argv(int argc, char **argv, const char *fmt, ...)
{
- int i;
+ char *prefix;
+ va_list ap;
+ int i;
+
+ va_start(ap, fmt);
+ xvasprintf(&prefix, fmt, ap);
+ va_end(ap);
for (i = 0; i < argc; i++)
log_debug("%s: argv[%d]=%s", prefix, i, argv[i]);
+ free(prefix);
}
void
@@ -245,7 +252,7 @@ cmd_pack_argv(int argc, char **argv, char *buf, size_t len)
if (argc == 0)
return (0);
- cmd_log_argv(argc, argv, __func__);
+ cmd_log_argv(argc, argv, "%s", __func__);
*buf = '\0';
for (i = 0; i < argc; i++) {
@@ -282,7 +289,7 @@ cmd_unpack_argv(char *buf, size_t len, int argc, char ***argv)
buf += arglen;
len -= arglen;
}
- cmd_log_argv(argc, *argv, __func__);
+ cmd_log_argv(argc, *argv, "%s", __func__);
return (0);
}
@@ -437,7 +444,7 @@ cmd_parse(int argc, char **argv, const char *file, u_int line, char **cause)
entry = cmd_find(name, cause);
if (entry == NULL)
return (NULL);
- cmd_log_argv(argc, argv, entry->name);
+ cmd_log_argv(argc, argv, "%s: %s", __func__, entry->name);
args = args_parse(entry->args.template, argc, argv);
if (args == NULL)
diff --git a/usr.bin/tmux/spawn.c b/usr.bin/tmux/spawn.c
index f74625cb66c..241a40f63c2 100644
--- a/usr.bin/tmux/spawn.c
+++ b/usr.bin/tmux/spawn.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: spawn.c,v 1.3 2019/05/03 20:44:24 nicm Exp $ */
+/* $OpenBSD: spawn.c,v 1.4 2019/05/25 06:58:10 nicm Exp $ */
/*
* Copyright (c) 2019 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -329,7 +329,7 @@ spawn_pane(struct spawn_context *sc, char **cause)
}
if (cwd != NULL)
log_debug("%s: cwd=%s", __func__, cwd);
- cmd_log_argv(new_wp->argc, new_wp->argv, __func__);
+ cmd_log_argv(new_wp->argc, new_wp->argv, "%s", __func__);
environ_log(child, "%s: environment ", __func__);
/* If the command is empty, don't fork a child process. */
diff --git a/usr.bin/tmux/tmux.h b/usr.bin/tmux/tmux.h
index 1d6ffb225f7..35fac212d9d 100644
--- a/usr.bin/tmux/tmux.h
+++ b/usr.bin/tmux/tmux.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.h,v 1.903 2019/05/23 14:03:44 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.904 2019/05/25 06:58:10 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -1987,7 +1987,7 @@ int cmd_find_from_mouse(struct cmd_find_state *,
int cmd_find_from_nothing(struct cmd_find_state *, int);
/* cmd.c */
-void cmd_log_argv(int, char **, const char *);
+void printflike(3, 4) cmd_log_argv(int, char **, const char *, ...);
void cmd_prepend_argv(int *, char ***, char *);
void cmd_append_argv(int *, char ***, char *);
int cmd_pack_argv(int, char **, char *, size_t);