summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2013-11-07 10:28:00 +0000
committerCarl Hetherington <cth@carlh.net>2013-11-07 10:28:00 +0000
commit29a3d5d116da0626f71bf488b0408bd461327184 (patch)
tree141f19b3d70fcb686221ff5f10d8a4012ec2c7a7 /src/lib
parent8fa2fb5438708be00bb57f993836b0884d196876 (diff)
Force initial update of progress so that the sub-job gets updates straight away.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/job.cc6
-rw-r--r--src/lib/job.h2
-rw-r--r--src/lib/writer.cc4
3 files changed, 6 insertions, 6 deletions
diff --git a/src/lib/job.cc b/src/lib/job.cc
index 5fbd1a160..cc52a29f2 100644
--- a/src/lib/job.cc
+++ b/src/lib/job.cc
@@ -212,9 +212,9 @@ Job::elapsed_time () const
* @param p Progress (from 0 to 1)
*/
void
-Job::set_progress (float p)
+Job::set_progress (float p, bool force)
{
- if (fabs (p - progress()) < 0.01) {
+ if (!force && fabs (p - progress()) < 0.01) {
/* Calm excessive progress reporting */
return;
}
@@ -248,7 +248,7 @@ Job::sub (string n)
_sub_name = n;
}
- set_progress (0);
+ set_progress (0, true);
}
string
diff --git a/src/lib/job.h b/src/lib/job.h
index 62db0fc46..6310da32a 100644
--- a/src/lib/job.h
+++ b/src/lib/job.h
@@ -69,7 +69,7 @@ public:
}
void set_progress_unknown ();
- void set_progress (float);
+ void set_progress (float, bool force = false);
void sub (std::string);
float progress () const;
bool progress_unknown () const {
diff --git a/src/lib/writer.cc b/src/lib/writer.cc
index d7f3512cb..40f6ed971 100644
--- a/src/lib/writer.cc
+++ b/src/lib/writer.cc
@@ -383,10 +383,10 @@ Writer::finish ()
));
_job->sub (_("Computing image digest"));
- _picture_asset->compute_digest (boost::bind (&Job::set_progress, _job.get(), _1));
+ _picture_asset->compute_digest (boost::bind (&Job::set_progress, _job.get(), _1, false));
_job->sub (_("Computing audio digest"));
- _sound_asset->compute_digest (boost::bind (&Job::set_progress, _job.get(), _1));
+ _sound_asset->compute_digest (boost::bind (&Job::set_progress, _job.get(), _1, false));
libdcp::XMLMetadata meta = Config::instance()->dcp_metadata ();
meta.set_issue_date_now ();