From 3c06bec03fe269b8a2548c147fe7b4f2eb4d3c7a Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 31 Mar 2014 21:43:55 +0000 Subject: Don't crash with a zero-length argument to setb, from J Raynor. --- cmd-set-buffer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'cmd-set-buffer.c') diff --git a/cmd-set-buffer.c b/cmd-set-buffer.c index 0942da9a..a206760c 100644 --- a/cmd-set-buffer.c +++ b/cmd-set-buffer.c @@ -56,6 +56,9 @@ cmd_set_buffer_exec(struct cmd *self, struct cmd_q *cmdq) pb = NULL; buffer = -1; + if ((newsize = strlen(args->argv[0])) == 0) + return (CMD_RETURN_NORMAL); + if (args_has(args, 'b')) { buffer = args_strtonum(args, 'b', 0, INT_MAX, &cause); if (cause != NULL) { @@ -80,8 +83,6 @@ cmd_set_buffer_exec(struct cmd *self, struct cmd_q *cmdq) memcpy(pdata, pb->data, psize); } - newsize = strlen(args->argv[0]); - pdata = xrealloc(pdata, 1, psize + newsize); memcpy(pdata + psize, args->argv[0], newsize); psize += newsize; -- cgit v1.2.3