diff options
author | wm4 <wm4@nowhere> | 2020-03-21 22:09:07 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2020-03-21 22:09:07 +0100 |
commit | d375cc304aec11f09ed685ffd2f2e7af0abf8910 (patch) | |
tree | 26da9432e6411576f040b83934d62cba70cbe847 /player/client.c | |
parent | 0fbe7f9e54fc2fe2d5b1e466906c6ffcab448e5a (diff) | |
download | mpv-d375cc304aec11f09ed685ffd2f2e7af0abf8910.tar.bz2 mpv-d375cc304aec11f09ed685ffd2f2e7af0abf8910.tar.xz |
client API, lua: unify event code further
Move some parts that can be generic to the client API code. It turns out
lua.c doesn't need anything special.
This adds the "id" field. I think this was actually missing from the
JSON IPC code (i.e. it's a very recent regression that is fixed with
this commit).
Diffstat (limited to 'player/client.c')
-rw-r--r-- | player/client.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/player/client.c b/player/client.c index 396c623cea..648ff1173c 100644 --- a/player/client.c +++ b/player/client.c @@ -1923,6 +1923,9 @@ int mpv_event_to_node(mpv_node *dst, mpv_event *event) if (event->error < 0) node_map_add_string(dst, "error", mpv_error_string(event->error)); + if (event->reply_userdata) + node_map_add_int64(dst, "id", event->reply_userdata); + switch (event->event_id) { case MPV_EVENT_START_FILE: { @@ -1999,6 +2002,13 @@ int mpv_event_to_node(mpv_node *dst, mpv_event *event) break; } + case MPV_EVENT_COMMAND_REPLY: { + mpv_event_command *cmd = event->data; + + *node_map_add(dst, "result", MPV_FORMAT_NONE) = cmd->result; + break; + } + case MPV_EVENT_HOOK: { mpv_event_hook *hook = event->data; |