Cleanup: use a namespace.
[dcpomatic.git] / src / lib / dcp_content.cc
index cad775b24854b9c79aba7448570c11a70edd99ce..87e59de50bc7ca27a14bfcde1d39b109b4e45429 100644 (file)
@@ -192,16 +192,18 @@ DCPContent::read_directory (boost::filesystem::path p)
 void
 DCPContent::read_sub_directory (boost::filesystem::path p)
 {
+       using namespace boost::filesystem;
+
        LOG_GENERAL ("DCPContent::read_sub_directory reads %1", p.string());
-       for (auto i: boost::filesystem::directory_iterator(p)) {
-               if (boost::filesystem::is_regular_file(i.path())) {
+       for (auto i: directory_iterator(p)) {
+               if (is_regular_file(i.path())) {
                        LOG_GENERAL ("Inside there's regular file %1", i.path().string());
                        add_path (i.path());
-               } else if (boost::filesystem::is_directory(i.path()) && i.path().filename() != ".AppleDouble") {
+               } else if (is_directory(i.path()) && i.path().filename() != ".AppleDouble") {
                        LOG_GENERAL ("Inside there's directory %1", i.path().string());
                        read_sub_directory (i.path());
                } else {
-                       LOG_GENERAL("Ignoring %1 from inside: status is %2", i.path().string(), static_cast<int>(boost::filesystem::status(i.path()).type()));
+                       LOG_GENERAL("Ignoring %1 from inside: status is %2", i.path().string(), static_cast<int>(status(i.path()).type()));
                }
        }
 }
@@ -276,6 +278,7 @@ DCPContent::examine (shared_ptr<const Film> film, shared_ptr<Job> job)
        for (int i = 0; i < examiner->text_count(TextType::CLOSED_CAPTION); ++i) {
                auto c = make_shared<TextContent>(this, TextType::CLOSED_CAPTION, TextType::CLOSED_CAPTION);
                c->set_dcp_track (examiner->dcp_text_track(i));
+               add_fonts_from_examiner(c, examiner->fonts());
                new_text.push_back (c);
        }
 
@@ -831,8 +834,9 @@ add_fonts_from_examiner(shared_ptr<TextContent> text, vector<vector<shared_ptr<F
                         * by prepending the reel number.  We do the same disambiguation when emitting the
                         * subtitles in the DCP decoder.
                         */
-                       font->set_id(id_for_font_in_reel(font->id(), reel_number));
-                       text->add_font(font);
+                       auto font_copy = make_shared<dcpomatic::Font>(*font);
+                       font_copy->set_id(id_for_font_in_reel(font->id(), reel_number));
+                       text->add_font(font_copy);
                }
                ++reel_number;
        }