version 1.11, 2014/04/24 09:14:43 |
version 1.12, 2014/05/13 07:34:35 |
|
|
cmd_delete_buffer_exec(struct cmd *self, struct cmd_q *cmdq) |
cmd_delete_buffer_exec(struct cmd *self, struct cmd_q *cmdq) |
{ |
{ |
struct args *args = self->args; |
struct args *args = self->args; |
char *cause; |
const char *bufname; |
int buffer; |
|
|
|
if (!args_has(args, 'b')) { |
if (!args_has(args, 'b')) { |
paste_free_top(); |
paste_free_top(); |
return (CMD_RETURN_NORMAL); |
return (CMD_RETURN_NORMAL); |
} |
} |
|
bufname = args_get(args, 'b'); |
|
|
buffer = args_strtonum(args, 'b', 0, INT_MAX, &cause); |
if (paste_free_name(bufname) != 0) { |
if (cause != NULL) { |
cmdq_error(cmdq, "no buffer %s", bufname); |
cmdq_error(cmdq, "buffer %s", cause); |
|
free(cause); |
|
return (CMD_RETURN_ERROR); |
|
} |
|
|
|
if (paste_free_index(buffer) != 0) { |
|
cmdq_error(cmdq, "no buffer %d", buffer); |
|
return (CMD_RETURN_ERROR); |
return (CMD_RETURN_ERROR); |
} |
} |
|
|