diff options
Diffstat (limited to 'cmd-delete-buffer.c')
-rw-r--r-- | cmd-delete-buffer.c | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/cmd-delete-buffer.c b/cmd-delete-buffer.c index b8f55db4..42268b78 100644 --- a/cmd-delete-buffer.c +++ b/cmd-delete-buffer.c @@ -1,4 +1,4 @@ -/* $Id$ */ +/* $OpenBSD$ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -33,7 +33,6 @@ const struct cmd_entry cmd_delete_buffer_entry = { "b:", 0, 0, CMD_BUFFER_USAGE, 0, - NULL, cmd_delete_buffer_exec }; @@ -41,23 +40,16 @@ enum cmd_retval cmd_delete_buffer_exec(struct cmd *self, struct cmd_q *cmdq) { struct args *args = self->args; - char *cause; - int buffer; + const char *bufname; if (!args_has(args, 'b')) { - paste_free_top(&global_buffers); + paste_free_top(); return (CMD_RETURN_NORMAL); } + bufname = args_get(args, 'b'); - buffer = args_strtonum(args, 'b', 0, INT_MAX, &cause); - if (cause != NULL) { - cmdq_error(cmdq, "buffer %s", cause); - free(cause); - return (CMD_RETURN_ERROR); - } - - if (paste_free_index(&global_buffers, buffer) != 0) { - cmdq_error(cmdq, "no buffer %d", buffer); + if (paste_free_name(bufname) != 0) { + cmdq_error(cmdq, "no buffer %s", bufname); return (CMD_RETURN_ERROR); } |