diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-02-18 01:26:03 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-02-18 01:28:39 +0000 |
| commit | 37252b5a04501c1ba3c27c51d043235046775f78 (patch) | |
| tree | b9ed24dd20b4bf4e9da65265014bddf4e1ca78a9 /src/lib/dkdm_wrapper.h | |
| parent | f7446b20d4ce0575906ee9e40dcee3c74af62860 (diff) | |
Hold lock for the whole of Butler::video(). Fixes jumpy nudge-seek
when playing DCPs.
Before, the lock was only held to check _pending_seek_position.
With that arrangement, this sequence was possible:
1. video arrives, check _pending_seek_position, decide it's ok, release lock
2. Butler::seek called, sets _pending_seek_position, clears _video
3. video that arrived in #1 is put into _video by ::video()
4. that video is given to an awaiting get_video() call.
This clearly subverts the attempts not to accept new video data while
a seek is pending.
Diffstat (limited to 'src/lib/dkdm_wrapper.h')
0 files changed, 0 insertions, 0 deletions
