diff options
| author | Carl Hetherington <cth@carlh.net> | 2019-08-30 23:16:21 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2019-08-30 23:16:21 +0100 |
| commit | 1f88a38a2a607c21988a403e76f315444c4be36b (patch) | |
| tree | 2b14f959784faf33eec61172552d9c50b72a0f65 /src/tools | |
| parent | 77d2514fee2919c32e4db92b8f75369754d17fb5 (diff) | |
Make player more tolerant of some DCP errors.
Diffstat (limited to 'src/tools')
| -rw-r--r-- | src/tools/dcpomatic_player.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/tools/dcpomatic_player.cc b/src/tools/dcpomatic_player.cc index cdacee784..864818845 100644 --- a/src/tools/dcpomatic_player.cc +++ b/src/tools/dcpomatic_player.cc @@ -312,7 +312,7 @@ public: shared_ptr<DCPContent> dcp = dynamic_pointer_cast<DCPContent>(_film->content().front()); if (dcp) { - DCPExaminer ex (dcp); + DCPExaminer ex (dcp, true); shared_ptr<dcp::CPL> playing_cpl; BOOST_FOREACH (shared_ptr<dcp::CPL> i, ex.cpls()) { if (!dcp->cpl() || i->id() == *dcp->cpl()) { @@ -394,6 +394,7 @@ public: void reset_film (shared_ptr<Film> film = shared_ptr<Film>(new Film(optional<boost::filesystem::path>()))) { _film = film; + _film->set_tolerant (true); _viewer->set_film (_film); _controls->set_film (_film); _film->Change.connect (bind(&DOMFrame::film_changed, this, _1, _2)); @@ -448,7 +449,7 @@ public: /* Offer a CPL menu */ shared_ptr<DCPContent> first = dynamic_pointer_cast<DCPContent>(_film->content().front()); if (first) { - DCPExaminer ex (first); + DCPExaminer ex (first, true); int id = ID_view_cpl; BOOST_FOREACH (shared_ptr<dcp::CPL> i, ex.cpls()) { wxMenuItem* j = _cpl_menu->AppendRadioItem( @@ -701,7 +702,7 @@ private: { shared_ptr<DCPContent> dcp = boost::dynamic_pointer_cast<DCPContent>(_film->content().front()); DCPOMATIC_ASSERT (dcp); - DCPExaminer ex (dcp); + DCPExaminer ex (dcp, true); int id = ev.GetId() - ID_view_cpl; DCPOMATIC_ASSERT (id >= 0); DCPOMATIC_ASSERT (id < int(ex.cpls().size())); |
