diff options
Diffstat (limited to 'input/input.c')
-rw-r--r-- | input/input.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/input/input.c b/input/input.c index 5b3370736a..d1c69a9587 100644 --- a/input/input.c +++ b/input/input.c @@ -48,7 +48,7 @@ #include "options/m_config.h" #include "options/m_option.h" #include "options/path.h" -#include "talloc.h" +#include "mpv_talloc.h" #include "options/options.h" #include "misc/bstr.h" #include "stream/stream.h" @@ -446,7 +446,9 @@ static mp_cmd_t *get_cmd_from_keys(struct input_ctx *ictx, char *force_section, return handle_test(ictx, code); struct cmd_bind *cmd = find_any_bind_for_key(ictx, force_section, code); - if (cmd == NULL) { + if (!cmd) + cmd = find_any_bind_for_key(ictx, force_section, MP_KEY_UNMAPPED); + if (!cmd) { if (code == MP_KEY_CLOSE_WIN) return mp_input_parse_cmd_strv(ictx->log, (const char*[]){"quit", 0}); int msgl = MSGL_WARN; @@ -460,12 +462,9 @@ static mp_cmd_t *get_cmd_from_keys(struct input_ctx *ictx, char *force_section, mp_cmd_t *ret = mp_input_parse_cmd(ictx, bstr0(cmd->cmd), cmd->location); if (ret) { ret->input_section = cmd->owner->section; - if (mp_msg_test(ictx->log, MSGL_DEBUG)) { - char *keyname = mp_input_get_key_combo_name(&code, 1); - MP_DBG(ictx, "key '%s' -> '%s' in '%s'\n", - keyname, cmd->cmd, ret->input_section); - talloc_free(keyname); - } + ret->key_name = talloc_steal(ret, mp_input_get_key_combo_name(&code, 1)); + MP_DBG(ictx, "key '%s' -> '%s' in '%s'\n", + ret->key_name, cmd->cmd, ret->input_section); ret->is_mouse_button = code & MP_KEY_EMIT_ON_UP; } else { char *key_buf = mp_input_get_key_combo_name(&code, 1); @@ -1265,11 +1264,7 @@ void mp_input_load(struct input_ctx *ictx) #if defined(__MINGW32__) if (ictx->global->opts->input_file && *ictx->global->opts->input_file) -#if HAVE_WAIO mp_input_pipe_add(ictx, ictx->global->opts->input_file); -#else - MP_ERR(ictx, "Pipes not available.\n"); -#endif #endif } |