diff options
Diffstat (limited to 'src/lib/film.cc')
| -rw-r--r-- | src/lib/film.cc | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/lib/film.cc b/src/lib/film.cc index e2b3d4bc3..00d37c097 100644 --- a/src/lib/film.cc +++ b/src/lib/film.cc @@ -534,16 +534,18 @@ Film::make_dcp (bool transcode, int freq) o->padding = format()->dcp_padding (this); o->ratio = format()->ratio_as_float (this); + shared_ptr<Job> r; + if (transcode) { if (_state.dcp_ab) { - JobManager::instance()->add (shared_ptr<Job> (new ABTranscodeJob (fs, o, log ()))); + r = JobManager::instance()->add (shared_ptr<Job> (new ABTranscodeJob (fs, o, log(), shared_ptr<Job> ()))); } else { - JobManager::instance()->add (shared_ptr<Job> (new TranscodeJob (fs, o, log ()))); + r = JobManager::instance()->add (shared_ptr<Job> (new TranscodeJob (fs, o, log(), shared_ptr<Job> ()))); } } - JobManager::instance()->add (shared_ptr<Job> (new CheckHashesJob (fs, o, log ()))); - JobManager::instance()->add (shared_ptr<Job> (new MakeDCPJob (fs, o, log ()))); + r = JobManager::instance()->add (shared_ptr<Job> (new CheckHashesJob (fs, o, log(), r))); + JobManager::instance()->add (shared_ptr<Job> (new MakeDCPJob (fs, o, log(), r))); } shared_ptr<FilmState> @@ -582,7 +584,7 @@ Film::examine_content () return; } - _examine_content_job.reset (new ExamineContentJob (state_copy (), log ())); + _examine_content_job.reset (new ExamineContentJob (state_copy (), log(), shared_ptr<Job> ())); _examine_content_job->Finished.connect (sigc::mem_fun (*this, &Film::examine_content_post_gui)); JobManager::instance()->add (_examine_content_job); } @@ -631,14 +633,14 @@ Film::set_still_duration (int d) void Film::send_dcp_to_tms () { - shared_ptr<Job> j (new SCPDCPJob (state_copy (), log ())); + shared_ptr<Job> j (new SCPDCPJob (state_copy (), log(), shared_ptr<Job> ())); JobManager::instance()->add (j); } void Film::copy_from_dvd () { - shared_ptr<Job> j (new CopyFromDVDJob (state_copy (), log ())); + shared_ptr<Job> j (new CopyFromDVDJob (state_copy (), log(), shared_ptr<Job> ())); j->Finished.connect (sigc::mem_fun (*this, &Film::copy_from_dvd_post_gui)); JobManager::instance()->add (j); } |
