diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2010-12-06 21:48:56 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2010-12-06 21:48:56 +0000 |
commit | 39e277be3c05dd13e92766cb8fc8ffc58cefdd53 (patch) | |
tree | 6e4871d04704b20c1167c4d00c696f56a4402f98 /cmd.c | |
parent | 1650155589968f50b1443ff5af8dfae92b9a77c3 (diff) | |
download | rtmux-39e277be3c05dd13e92766cb8fc8ffc58cefdd53.tar.gz rtmux-39e277be3c05dd13e92766cb8fc8ffc58cefdd53.tar.bz2 rtmux-39e277be3c05dd13e92766cb8fc8ffc58cefdd53.zip |
|---------------------
|PatchSet 781
|Date: 2010/10/29 21:11:57
|Author: nicm
|Branch: HEAD
|Tag: (none)
|Log:
|We now send argv to the server after parsing it in the client to get the
|command, so the client should not modify it. Instead, take a copy. Fixes
|parsing command lists, reported by mcbride@.
|
|Members:
| cmd-list.c:1.5->1.6
| cmd.c:1.45->1.46
| tmux.h:1.244->1.245
Diffstat (limited to 'cmd.c')
-rw-r--r-- | cmd.c | 18 |
1 files changed, 17 insertions, 1 deletions
@@ -1,4 +1,4 @@ -/* $Id: cmd.c,v 1.144 2010-10-24 01:34:30 tcunha Exp $ */ +/* $Id: cmd.c,v 1.145 2010-12-06 21:48:56 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -165,6 +165,22 @@ cmd_unpack_argv(char *buf, size_t len, int argc, char ***argv) return (0); } +char ** +cmd_copy_argv(int argc, char **argv) +{ + char **new_argv; + int i; + + if (argc == 0) + return (NULL); + new_argv = xcalloc(argc, sizeof *new_argv); + for (i = 0; i < argc; i++) { + if (argv[i] != NULL) + new_argv[i] = xstrdup(argv[i]); + } + return (new_argv); +} + void cmd_free_argv(int argc, char **argv) { |