diff --git a/src/ng/q.js b/src/ng/q.js index cc39967c50eb..f6133d4dbd49 100644 --- a/src/ng/q.js +++ b/src/ng/q.js @@ -375,7 +375,12 @@ function qFactory(nextTick, exceptionHandler) { then: function(callback, errback) { var result = defer(); nextTick(function() { - result.resolve((isFunction(errback) ? errback : defaultErrback)(reason)); + try { + result.resolve((isFunction(errback) ? errback : defaultErrback)(reason)); + } catch (e) { + result.reject(e); + exceptionHandler(e); + } }); return result.promise; }