summaryrefslogtreecommitdiff
path: root/src/lib/playlist.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2018-12-14 00:58:48 +0000
committerCarl Hetherington <cth@carlh.net>2018-12-14 00:58:48 +0000
commited227b4fdba9b4fc7f06f6db4830219f14bad358 (patch)
tree153245bd3520fb7cb7ed3b74ac7b45e67f059f70 /src/lib/playlist.cc
parentc7ae521e655354dd2f27766ee23766a0e698a89c (diff)
swaroop: fix up restart-after-crash.v2.13.84
Diffstat (limited to 'src/lib/playlist.cc')
-rw-r--r--src/lib/playlist.cc7
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);