diff options
Diffstat (limited to 'input')
-rw-r--r-- | input/input.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/input/input.c b/input/input.c index 7567d9fc47..835b97c916 100644 --- a/input/input.c +++ b/input/input.c @@ -1294,8 +1294,13 @@ mp_input_get_cmd(int time, int paused, int peek_only) { if(!ret) return NULL; for(cf = cmd_filters ; cf ; cf = cf->next) { - if(cf->filter(ret,paused,cf->ctx)) + if(cf->filter(ret,paused,cf->ctx)) { + if (peek_only && from_queue) + // The filter ate the cmd, so we remove it from queue + ret = mp_input_get_queued_cmd(0); + mp_cmd_free(ret); return NULL; + } } if (!from_queue && peek_only) |