summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2012-10-10 15:47:22 +0100
committerCarl Hetherington <cth@carlh.net>2012-10-10 15:47:22 +0100
commitb5001080a3e5b414f6cad1c52926ed757f2d8574 (patch)
tree53a24e5a831121ea85227b208e620d20509318c6 /src
parent1bbd5367ddddfac18ceaa4d010cfc39f1daaa3a3 (diff)
Don't run more than one job at once.
Diffstat (limited to 'src')
-rw-r--r--src/lib/job_manager.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lib/job_manager.cc b/src/lib/job_manager.cc
index 562c887de..2db91a177 100644
--- a/src/lib/job_manager.cc
+++ b/src/lib/job_manager.cc
@@ -95,6 +95,11 @@ JobManager::scheduler ()
{
boost::mutex::scoped_lock lm (_mutex);
for (list<shared_ptr<Job> >::iterator i = _jobs.begin(); i != _jobs.end(); ++i) {
+ if ((*i)->running ()) {
+ /* Something is already happening */
+ break;
+ }
+
if ((*i)->is_new()) {
shared_ptr<Job> r = (*i)->required ();
if (!r || r->finished_ok ()) {