From 5d9f42050a11015adbd5dc4dde73818919e93a99 Mon Sep 17 00:00:00 2001 From: Igor Minar Date: Wed, 21 Aug 2013 22:57:48 -0700 Subject: fix($q): reject should catch & forward exceptions thrown in errback --- src/ng/q.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/ng') diff --git a/src/ng/q.js b/src/ng/q.js index cc39967c..6c4d3f5f 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; } -- cgit v1.2.3