diff options
| author | Pete Bacon Darwin | 2013-07-31 10:09:23 +0100 |
|---|---|---|
| committer | Brian Ford | 2013-08-12 16:23:37 -0700 |
| commit | d59027c40ed73fa9e114706d0c5a885785311dec (patch) | |
| tree | 05ef864ab0430122ecefb6adfe76fce1240d0f56 /src/ng/q.js | |
| parent | c197c2aa277d7f68e3faa18fa67cf58072423233 (diff) | |
| download | angular.js-d59027c40ed73fa9e114706d0c5a885785311dec.tar.bz2 | |
fix($q): call `reject()` even if `$exceptionHandler` rethrows
Normally $exceptionHandler doesn't throw an exception. It is normally
used just for logging and so on. But if an application developer
implemented a version that did throw an exception then $q would never
have called reject() when converting an exception thrown inside a `then`
handler into a rejected promise.
Diffstat (limited to 'src/ng/q.js')
| -rw-r--r-- | src/ng/q.js | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/ng/q.js b/src/ng/q.js index 2b75b3c8..bf235640 100644 --- a/src/ng/q.js +++ b/src/ng/q.js @@ -215,8 +215,8 @@ function qFactory(nextTick, exceptionHandler) { try { result.resolve((callback || defaultCallback)(value)); } catch(e) { - exceptionHandler(e); result.reject(e); + exceptionHandler(e); } }; @@ -224,8 +224,8 @@ function qFactory(nextTick, exceptionHandler) { try { result.resolve((errback || defaultErrback)(reason)); } catch(e) { - exceptionHandler(e); result.reject(e); + exceptionHandler(e); } }; |
