Add an assertion.
[dcpomatic.git] / src / lib / film.cc
index aaa2627e1713ed4695fb344aadd6179112937af2..e54268805ca9c71d752ecd89026d84cf6ebdc6ca 100644 (file)
@@ -99,6 +99,7 @@ using boost::dynamic_pointer_cast;
 using boost::optional;
 using boost::is_any_of;
 using dcp::raw_convert;
+using namespace dcpomatic;
 
 string const Film::metadata_file = "metadata.xml";
 
@@ -547,6 +548,7 @@ Film::read_metadata (optional<boost::filesystem::path> path)
                _ratings.push_back (dcp::Rating(i));
        }
 
+       list<string> notes;
        _playlist->set_from_xml (shared_from_this(), f.node_child ("Playlist"), _state_version, notes);
 
        /* Write backtraces to this film's directory, until another film is loaded */
@@ -1418,7 +1420,7 @@ Film::make_kdm (
  *  @param disable_forensic_marking_audio if not set, don't disable forensic marking of audio.  If set to 0,
  *  disable all forensic marking; if set above 0, disable forensic marking above that channel.
  */
-list<ScreenKDM>
+list<shared_ptr<ScreenKDM> >
 Film::make_kdms (
        list<shared_ptr<Screen> > screens,
        boost::filesystem::path cpl_file,
@@ -1429,7 +1431,7 @@ Film::make_kdms (
        optional<int> disable_forensic_marking_audio
        ) const
 {
-       list<ScreenKDM> kdms;
+       list<shared_ptr<ScreenKDM> > kdms;
 
        BOOST_FOREACH (shared_ptr<Screen> i, screens) {
                if (i->recipient) {
@@ -1444,7 +1446,7 @@ Film::make_kdms (
                                disable_forensic_marking_audio
                                );
 
-                       kdms.push_back (ScreenKDM (i, kdm));
+                       kdms.push_back (shared_ptr<ScreenKDM>(new DCPScreenKDM(i, kdm)));
                }
        }