summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2017-05-05 09:57:48 +0100
committerCarl Hetherington <cth@carlh.net>2017-05-05 09:57:48 +0100
commit275f2d20a3d2760e6136baf35d57080f852a8760 (patch)
tree52f080121bd74bec3586fc03531d6bfa6d97647a /src/lib
parentaea4c527c8a0c8ee0f2de18a87852f00866040ba (diff)
Clear _video/_audio when the seek is request, not when it's performed.
Otherwise between the seek request and action there can be a get_video() call which returns "stale" data.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/butler.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/lib/butler.cc b/src/lib/butler.cc
index 48e3a526c..29f168335 100644
--- a/src/lib/butler.cc
+++ b/src/lib/butler.cc
@@ -90,8 +90,6 @@ try
/* Do any seek that has been requested */
if (_pending_seek_position) {
- _video.clear ();
- _audio.clear ();
_finished = false;
_player->seek (*_pending_seek_position, _pending_seek_accurate);
_pending_seek_position = optional<DCPTime> ();
@@ -152,6 +150,8 @@ Butler::seek (DCPTime position, bool accurate)
return;
}
+ _video.clear ();
+ _audio.clear ();
_pending_seek_position = position;
_pending_seek_accurate = accurate;
_summon.notify_all ();