summaryrefslogtreecommitdiffstats
path: root/input/input.c
diff options
context:
space:
mode:
Diffstat (limited to 'input/input.c')
-rw-r--r--input/input.c19
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
}