diff options
Diffstat (limited to 'src/lib/playlist.cc')
| -rw-r--r-- | src/lib/playlist.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/lib/playlist.cc b/src/lib/playlist.cc index c10235f9b..f530d2ee3 100644 --- a/src/lib/playlist.cc +++ b/src/lib/playlist.cc @@ -68,6 +68,13 @@ Playlist::~Playlist () void Playlist::content_change (weak_ptr<const Film> weak_film, ChangeType type, weak_ptr<Content> content, int property, bool frequent) { + /* Make sure we only hear about atomic changes (e.g. a PENDING always with the DONE/CANCELLED) + Ignore any DONE/CANCELLED that arrives without a PENDING. + */ + if (_checker.send (type, property)) { + return; + } + shared_ptr<const Film> film = weak_film.lock (); DCPOMATIC_ASSERT (film); |
