diff --git a/src/screen_keydef.c b/src/screen_keydef.c
index 4519008928ef0a4642c30064d0e6b1dff1f5f42b..dde5ce571321e56f8aebd75500a264424775799e 100644 (file)
--- a/src/screen_keydef.c
+++ b/src/screen_keydef.c
#include "conf.h"
#include "screen.h"
#include "screen_utils.h"
+#include "Compiler.h"
#include <assert.h>
#include <errno.h>
* the position of the "apply" item. It's the same as command_n_commands,
* because array subscripts start at 0, while numbers of items start at 1.
*/
-static G_GNUC_PURE inline unsigned
+gcc_pure
+static inline unsigned
command_item_apply(void)
{
return command_n_commands;
}
/** the position of the "apply and save" item */
-static G_GNUC_PURE inline unsigned
+gcc_pure
+static inline unsigned
command_item_save(void)
{
return command_item_apply() + 1;
}
/** the number of items in the "command" view */
-static G_GNUC_PURE inline unsigned
+gcc_pure
+static inline unsigned
command_length(void)
{
return command_item_save() + 1;
static unsigned subcmd_n_keys = 0;
/** The position of the up ("[..]") item */
-static G_GNUC_CONST inline unsigned
+gcc_const
+static inline unsigned
subcmd_item_up(void)
{
return 0;
}
/** The position of the "add a key" item */
-static G_GNUC_PURE inline unsigned
+gcc_pure
+static inline unsigned
subcmd_item_add(void)
{
return subcmd_n_keys + 1;
}
/** The number of items in the list_window, if there's a command being edited */
-static G_GNUC_PURE inline unsigned
+gcc_pure
+static inline unsigned
subcmd_length(void)
{
return subcmd_item_add() + 1;
}
/** Check whether a given item is a key */
-static G_GNUC_PURE inline bool
+gcc_pure
+static inline bool
subcmd_item_is_key(unsigned i)
{
return (i > subcmd_item_up() && i < subcmd_item_add());
* Convert an item id (as in lw->selected) into a "key id", which is an array
* subscript to cmds[subcmd].keys.
*/
-static G_GNUC_CONST inline unsigned
+gcc_const
+static inline unsigned
subcmd_item_to_key_id(unsigned i)
{
return i - 1;
static int
save_keys(void)
{
- FILE *f;
- char *filename;
-
if (check_user_conf_dir()) {
screen_status_printf(_("Error: Unable to create directory ~/.ncmpc - %s"),
strerror(errno));
return -1;
}
- filename = build_user_key_binding_filename();
-
- if ((f = fopen(filename,"w")) == NULL) {
+ char *filename = build_user_key_binding_filename();
+ FILE *f = fopen(filename, "w");
+ if (f == NULL) {
screen_status_printf(_("Error: %s - %s"), filename, strerror(errno));
screen_bell();
g_free(filename);
static void
overwrite_key(int cmd_index, int key_index)
{
- int key;
- char *buf;
- command_t cmd;
-
assert(key_index < MAX_COMMAND_KEYS);
- buf = g_strdup_printf(_("Enter new key for %s: "), cmds[cmd_index].name);
- key = screen_getch(buf);
+ char *buf = g_strdup_printf(_("Enter new key for %s: "),
+ cmds[cmd_index].name);
+ const int key = screen_getch(buf);
g_free(buf);
- if (key==ERR) {
+ if (key == ERR) {
screen_status_printf(_("Aborted"));
return;
}
- cmd = find_key_command(key, cmds);
+ if (key == '\0') {
+ screen_status_printf(_("Ctrl-Space can't be used"));
+ return;
+ }
+
+ const command_t cmd = find_key_command(key, cmds);
if (cmd != CMD_NONE) {
screen_status_printf(_("Error: key %s is already used for %s"),
key2str(key), get_key_command_name(cmd));
}
static const char *
-list_callback(unsigned idx, G_GNUC_UNUSED void *data)
+list_callback(unsigned idx, gcc_unused void *data)
{
static char buf[256];
}
static void
-keydef_open(G_GNUC_UNUSED struct mpdclient *c)
+keydef_open(gcc_unused struct mpdclient *c)
{
if (cmds == NULL) {
command_definition_t *current_cmds = get_command_definitions();
- size_t cmds_size;
-
command_n_commands = 0;
while (current_cmds[command_n_commands].name)
command_n_commands++;
/* +1 for the terminator element */
- cmds_size = (command_n_commands + 1) * sizeof(command_definition_t);
+ size_t cmds_size = (command_n_commands + 1)
+ * sizeof(command_definition_t);
cmds = g_malloc0(cmds_size);
memcpy(cmds, current_cmds, cmds_size);
}
}
static bool
-keydef_cmd(G_GNUC_UNUSED struct mpdclient *c, command_t cmd)
+keydef_cmd(gcc_unused struct mpdclient *c, command_t cmd)
{
if (cmd == CMD_LIST_RANGE_SELECT)
return false;