diff --git a/inc/lektor/commands.h b/inc/lektor/commands.h index 440d6b10ac1221d4815445c701a0593ad5f05d44..ca3992132ff1ebf1e89423cb0c423274de06bb80 100644 --- a/inc/lektor/commands.h +++ b/inc/lektor/commands.h @@ -78,13 +78,13 @@ bool command_plt_list (struct lkt_state *srv, size_t, char *args[LKT_MESSAGE_AR bool command_plt_ctx (struct lkt_state *srv, size_t, char *args[LKT_MESSAGE_ARGS_MAX], int cont); /* The help */ -bool command_help(struct lkt_state *srv, size_t c, char *args[LKT_MESSAGE_ARGS_MAX]); +bool command_help(struct lkt_state *srv, size_t c, char *[LKT_MESSAGE_ARGS_MAX]); /* Respond to the idle command */ -bool command_idle(struct lkt_state *srv, size_t c, struct lkt_command *cmd); +bool command_idle(struct lkt_state *srv, size_t c, char *[LKT_MESSAGE_ARGS_MAX]); /* Cancel the call to the `idle` command. */ -bool command_noidle(struct lkt_state *srv, size_t c); +bool command_noidle(struct lkt_state *srv, size_t c, char *[LKT_MESSAGE_ARGS_MAX]); /* Find and send karas in the db that match the search expression */ bool command_find(struct lkt_state *srv, size_t c, char *cmd_args[LKT_MESSAGE_ARGS_MAX], diff --git a/src/base/commands.c b/src/base/commands.c index 99ee54ff5a78de57da4c66ec3c43f6cf520d5588..1a911e8c8a74a772cd53ffbeb29c4922f36f7f0d 100644 --- a/src/base/commands.c +++ b/src/base/commands.c @@ -536,35 +536,35 @@ command_help(struct lkt_state *srv, size_t c, char UNUSED *args[LKT_MESSAGE_ARGS } bool -command_idle(struct lkt_state *srv, size_t c, struct lkt_command *cmd) +command_idle(struct lkt_state *srv, size_t c, char *args[LKT_MESSAGE_ARGS_MAX]) { bool once; size_t i; - for (once = false, i = 0; cmd->args[i]; ++i, once |= true) { - if (STR_MATCH(cmd->args[i], "database")) + for (once = false, i = 0; args[i]; ++i, once |= true) { + if (STR_MATCH(args[i], "database")) lkt_client_add_mask(srv, c, MPD_IDLE_DATABASE); - else if (STR_MATCH(cmd->args[i], "update")) + else if (STR_MATCH(args[i], "update")) lkt_client_add_mask(srv, c, MPD_IDLE_UPDATE); - else if (STR_MATCH(cmd->args[i], "stored_playlist")) + else if (STR_MATCH(args[i], "stored_playlist")) lkt_client_add_mask(srv, c, MPD_IDLE_STORED_PLAYLIST); - else if (STR_MATCH(cmd->args[i], "playlist")) + else if (STR_MATCH(args[i], "playlist")) lkt_client_add_mask(srv, c, MPD_IDLE_PLAYLIST); - else if (STR_MATCH(cmd->args[i], "player")) + else if (STR_MATCH(args[i], "player")) lkt_client_add_mask(srv, c, MPD_IDLE_PLAYER); - else if (STR_MATCH(cmd->args[i], "mixer")) + else if (STR_MATCH(args[i], "mixer")) lkt_client_add_mask(srv, c, MPD_IDLE_MIXER); - else if (STR_MATCH(cmd->args[i], "output")) + else if (STR_MATCH(args[i], "output")) lkt_client_add_mask(srv, c, MPD_IDLE_OUTPUT); - else if (STR_MATCH(cmd->args[i], "options")) + else if (STR_MATCH(args[i], "options")) lkt_client_add_mask(srv, c, MPD_IDLE_OPTIONS); - else if (STR_MATCH(cmd->args[i], "partition")) + else if (STR_MATCH(args[i], "partition")) lkt_client_add_mask(srv, c, MPD_IDLE_PARTITION); - else if (STR_MATCH(cmd->args[i], "sticker")) + else if (STR_MATCH(args[i], "sticker")) lkt_client_add_mask(srv, c, MPD_IDLE_STICKER); - else if (STR_MATCH(cmd->args[i], "subscription")) + else if (STR_MATCH(args[i], "subscription")) lkt_client_add_mask(srv, c, MPD_IDLE_SUBSCRIPTION); - else if (STR_MATCH(cmd->args[i], "message")) + else if (STR_MATCH(args[i], "message")) lkt_client_add_mask(srv, c, MPD_IDLE_MESSAGE); else lkt_client_add_mask(srv, c, MPD_IDLE_ALL); @@ -579,7 +579,7 @@ command_idle(struct lkt_state *srv, size_t c, struct lkt_command *cmd) } inline bool -command_noidle(struct lkt_state *srv, size_t c) +command_noidle(struct lkt_state *srv, size_t c, char UNUSED *args[LKT_MESSAGE_ARGS_MAX]) { lkt_client_clear_mask(srv, c); return true; diff --git a/src/net/listen.c b/src/net/listen.c index 269692a35de433c4bfb3d1c8dbdcfdcd1cb40364..355201a61094cfa17564da5f82409970fa3bbf26 100644 --- a/src/net/listen.c +++ b/src/net/listen.c @@ -537,7 +537,7 @@ handle_simple_command(struct lkt_state *srv, size_t c, struct lkt_command cmd) err = !command_password(srv, c, cmd.args); else if (STR_MATCH(cmd.name, "idle")) { - err = !command_idle(srv, c, &cmd); + err = !command_idle(srv, c, cmd.args); goto end_no_send_status; } else if (STR_MATCH(cmd.name, "search") || STR_MATCH(cmd.name, "find") || STR_MATCH(cmd.name, "list") || STR_MATCH(cmd.name, "listall") || STR_MATCH(cmd.name, "listallinfo") || @@ -551,10 +551,10 @@ handle_simple_command(struct lkt_state *srv, size_t c, struct lkt_command cmd) default: /* commands available only in idle mode */ if (STR_MATCH(cmd.name, "idle")) { - err = !command_idle(srv, c, &cmd); + err = !command_idle(srv, c, cmd.args); goto end_no_send_status; } else if (STR_MATCH(cmd.name, "noidle")) - err = !command_noidle(srv, c); + err = !command_noidle(srv, c, NULL); else err = 2;