summaryrefslogtreecommitdiff
path: root/src/lib/dcp_content.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/dcp_content.cc')
-rw-r--r--src/lib/dcp_content.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/lib/dcp_content.cc b/src/lib/dcp_content.cc
index 29974a785..642659170 100644
--- a/src/lib/dcp_content.cc
+++ b/src/lib/dcp_content.cc
@@ -134,10 +134,10 @@ DCPContent::DCPContent (boost::filesystem::path p)
, _reference_video (false)
, _reference_audio (false)
, _three_d (false)
+ , _directory(p)
{
LOG_GENERAL ("Creating DCP content from %1", p.string());
- set_paths(read_directory(p));
set_default_colour_conversion ();
}
@@ -232,13 +232,14 @@ DCPContent::examine (shared_ptr<const Film> film, shared_ptr<Job> job)
ContentChangeSignaller cc_kdm (this, DCPContentProperty::NEEDS_KDM);
ContentChangeSignaller cc_name (this, DCPContentProperty::NAME);
+ auto examiner = make_shared<DCPExaminer>(shared_from_this(), film ? film->tolerant() : true, _directory ? read_directory(*_directory) : paths());
+ set_paths(examiner->paths());
+
if (job) {
job->set_progress_unknown ();
}
Content::examine (film, job);
- auto examiner = make_shared<DCPExaminer>(shared_from_this(), film ? film->tolerant() : true);
-
if (examiner->has_video()) {
{
boost::mutex::scoped_lock lm (_mutex);
@@ -559,7 +560,7 @@ DCPContent::reels (shared_ptr<const Film> film) const
if (reel_lengths.empty()) {
/* Old metadata with no reel lengths; get them here instead */
try {
- scoped_ptr<DCPExaminer> examiner (new DCPExaminer(shared_from_this(), film->tolerant()));
+ scoped_ptr<DCPExaminer> examiner(new DCPExaminer(shared_from_this(), film->tolerant(), paths()));
reel_lengths = examiner->reel_lengths ();
} catch (...) {
/* Could not examine the DCP; guess reels */
@@ -864,7 +865,7 @@ DCPContent::check_font_ids()
return;
}
- DCPExaminer examiner(shared_from_this(), true);
+ DCPExaminer examiner(shared_from_this(), true, paths());
add_fonts_from_examiner(text.front(), examiner.fonts());
}