diff options
author | wm4 <wm4@nowhere> | 2020-01-09 18:16:41 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2020-01-09 18:16:41 +0100 |
commit | 363048077f0ee3a98f1184b363a25c6c50afd6df (patch) | |
tree | c522fc8f4548ecd8b4e18841701b44f0163af04a /player/client.c | |
parent | 3a9f0f537fc108eb4c8a485ba9df686277ab57c2 (diff) | |
download | mpv-363048077f0ee3a98f1184b363a25c6c50afd6df.tar.bz2 mpv-363048077f0ee3a98f1184b363a25c6c50afd6df.tar.xz |
client API: fix property notification from non-playloop sources
This code assumed that the function is only called from the playloop
itself (and since property notification is done at the end of it, i.e.
before sleeping, it obviously would not have needed to wake up the
core).
But this function is actually called from some comments (such as
playlist-move), so this assumption was incorrect. Use the same method as
the other function.
Untested.
Fixes: #7339 (probably)
Diffstat (limited to 'player/client.c')
-rw-r--r-- | player/client.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/player/client.c b/player/client.c index af222e1873..0a3f5491a7 100644 --- a/player/client.c +++ b/player/client.c @@ -1576,8 +1576,10 @@ static void notify_property_events(struct mpv_handle *ctx, int event) ctx->has_pending_properties = true; } } - // Note: assume this function is called from the playloop only (at least - // if called with events that trigger property changes). + + // Same as in mp_client_property_change(). + if (ctx->has_pending_properties) + mp_dispatch_adjust_timeout(ctx->mpctx->dispatch, 0); } // Call with ctx->lock held (only). May temporarily drop the lock. |