summaryrefslogtreecommitdiffstats
path: root/menu.c
diff options
context:
space:
mode:
authornicm <nicm>2019-05-20 11:46:06 +0000
committernicm <nicm>2019-05-20 11:46:06 +0000
commite128c7fcd8441f3fa885eafc9328f0937cc7384c (patch)
tree2cd1ef8259cb2bcc22e52425d4515d2a7d1bd100 /menu.c
parent8db89f8efba007bab51dd8b8979a828730892f56 (diff)
Replace the various identical error callbacks with a single one in cmd-queue.c.
Diffstat (limited to 'menu.c')
-rw-r--r--menu.c25
1 files changed, 8 insertions, 17 deletions
diff --git a/menu.c b/menu.c
index 945b62c4..395e1455 100644
--- a/menu.c
+++ b/menu.c
@@ -191,17 +191,6 @@ menu_free_cb(struct client *c)
free(md);
}
-static enum cmd_retval
-menu_error_cb(struct cmdq_item *item, void *data)
-{
- char *error = data;
-
- cmdq_error(item, "%s", error);
- free(error);
-
- return (CMD_RETURN_NORMAL);
-}
-
static int
menu_key_cb(struct client *c, struct key_event *event)
{
@@ -284,12 +273,14 @@ chosen:
return (1);
}
cmdlist = cmd_string_parse(item->command, NULL, 0, &cause);
- if (cmdlist == NULL && cause != NULL)
- new_item = cmdq_get_callback(menu_error_cb, cause);
- else if (cmdlist == NULL)
- new_item = NULL;
- else {
- new_item = cmdq_get_command(cmdlist, &md->fs, NULL, 0);
+ if (cmdlist == NULL) {
+ if (cause != NULL)
+ new_item = cmdq_get_error(cause);
+ else
+ new_item = NULL;
+ free(cause);
+ } else {
+ new_item = cmdq_get_command(cmdlist, NULL, NULL, 0);
cmd_list_free(cmdlist);
}
if (new_item != NULL) {