diff options
Diffstat (limited to 'addons/web/static/src/js/boot.js')
| -rw-r--r-- | addons/web/static/src/js/boot.js | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/addons/web/static/src/js/boot.js b/addons/web/static/src/js/boot.js index 77115499b46..34abca7ef03 100644 --- a/addons/web/static/src/js/boot.js +++ b/addons/web/static/src/js/boot.js @@ -203,23 +203,28 @@ function process_job (job) { var require = make_require(job); + + var job_exec; + var def = $.Deferred(); try { - var def = $.Deferred(); - $.when(job.factory.call(null, require)).then( + job_exec = job.factory.call(null, require); + jobs.splice(jobs.indexOf(job), 1); + job_deferred.push(def); + } catch (e) { + job.error = e; + } + if (!job.error) { + $.when(job_exec).then( function (data) { services[job.name] = data; - clearTimeout(time); - time = _.defer(odoo.process_jobs, jobs, services); def.resolve(); + odoo.process_jobs(jobs, services); }, function (e) { job.rejected = e || true; jobs.push(job); def.resolve(); - }); - jobs.splice(jobs.indexOf(job), 1); - job_deferred.push(def); - } catch (e) { - job.error = e; + } + ); } } |
