summaryrefslogtreecommitdiffstats
path: root/install/ui/src/freeipa/_base/Phase_controller.js
diff options
context:
space:
mode:
authorPetr Vobornik <pvoborni@redhat.com>2013-04-12 17:21:24 +0200
committerPetr Vobornik <pvoborni@redhat.com>2013-05-06 16:22:25 +0200
commit952234ef79e1431773d3f3f35d71a7a12a229d5f (patch)
tree9206e935507cabd7b9fd5eb4871594580d07b733 /install/ui/src/freeipa/_base/Phase_controller.js
parent9f0188684fc970404d660b85e557135d103c3e73 (diff)
downloadfreeipa-952234ef79e1431773d3f3f35d71a7a12a229d5f.tar.gz
freeipa-952234ef79e1431773d3f3f35d71a7a12a229d5f.tar.xz
freeipa-952234ef79e1431773d3f3f35d71a7a12a229d5f.zip
Report phase errors
https://fedorahosted.org/freeipa/ticket/3235
Diffstat (limited to 'install/ui/src/freeipa/_base/Phase_controller.js')
-rw-r--r--install/ui/src/freeipa/_base/Phase_controller.js12
1 files changed, 10 insertions, 2 deletions
diff --git a/install/ui/src/freeipa/_base/Phase_controller.js b/install/ui/src/freeipa/_base/Phase_controller.js
index 471c36a0a..373348991 100644
--- a/install/ui/src/freeipa/_base/Phase_controller.js
+++ b/install/ui/src/freeipa/_base/Phase_controller.js
@@ -22,10 +22,11 @@ define([
'dojo/_base/lang',
'dojo/_base/array',
'dojo/_base/declare',
+ 'dojo/Deferred',
'dojo/promise/all',
'dojo/topic',
'../ordered-map'
-], function(lang, array, declare, all, topic, ordered_map) {
+], function(lang, array, declare, Deferred, all, topic, ordered_map) {
var Phase_controller = declare(null, {
@@ -76,7 +77,14 @@ define([
});
array.forEach(tasks, function(task) {
- var promise = task.handler();
+ var promise;
+ try {
+ promise = task.handler();
+ } catch (e) {
+ var fail = new Deferred();
+ fail.reject(e, true);
+ promise = fail.promise;
+ }
promises.push(promise);
});