Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnna Henningsen <anna@addaleax.net>2020-08-13 22:00:55 +0300
committerRich Trott <rtrott@gmail.com>2020-08-16 00:48:13 +0300
commit5d179cb2eccac38205b6f03ecf6403df65deea51 (patch)
tree03742d30a4103b8ebcc7058d4dfaa0f2851097bc /lib/timers
parentba5c64bf4541f540880cf35facdb8c24666072eb (diff)
timers: use AbortController with correct name/message
On the web, `AbortError` is the error name, not the error message. Change the code to match that. PR-URL: https://github.com/nodejs/node/pull/34763 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
Diffstat (limited to 'lib/timers')
-rw-r--r--lib/timers/promises.js20
1 files changed, 12 insertions, 8 deletions
diff --git a/lib/timers/promises.js b/lib/timers/promises.js
index 78197fe86f6..ef1e6437d4f 100644
--- a/lib/timers/promises.js
+++ b/lib/timers/promises.js
@@ -18,10 +18,10 @@ const {
let DOMException;
-const lazyDOMException = hideStackFrames((message) => {
+const lazyDOMException = hideStackFrames((message, name) => {
if (DOMException === undefined)
DOMException = internalBinding('messaging').DOMException;
- return new DOMException(message);
+ return new DOMException(message, name);
});
function setTimeout(after, value, options = {}) {
@@ -54,8 +54,10 @@ function setTimeout(after, value, options = {}) {
// TODO(@jasnell): If a decision is made that this cannot be backported
// to 12.x, then this can be converted to use optional chaining to
// simplify the check.
- if (signal && signal.aborted)
- return PromiseReject(lazyDOMException('AbortError'));
+ if (signal && signal.aborted) {
+ return PromiseReject(
+ lazyDOMException('The operation was aborted', 'AbortError'));
+ }
return new Promise((resolve, reject) => {
const timeout = new Timeout(resolve, after, args, false, true);
if (!ref) timeout.unref();
@@ -65,7 +67,7 @@ function setTimeout(after, value, options = {}) {
if (!timeout._destroyed) {
// eslint-disable-next-line no-undef
clearTimeout(timeout);
- reject(lazyDOMException('AbortError'));
+ reject(lazyDOMException('The operation was aborted', 'AbortError'));
}
}, { once: true });
}
@@ -101,8 +103,10 @@ function setImmediate(value, options = {}) {
// TODO(@jasnell): If a decision is made that this cannot be backported
// to 12.x, then this can be converted to use optional chaining to
// simplify the check.
- if (signal && signal.aborted)
- return PromiseReject(lazyDOMException('AbortError'));
+ if (signal && signal.aborted) {
+ return PromiseReject(
+ lazyDOMException('The operation was aborted', 'AbortError'));
+ }
return new Promise((resolve, reject) => {
const immediate = new Immediate(resolve, [value]);
if (!ref) immediate.unref();
@@ -111,7 +115,7 @@ function setImmediate(value, options = {}) {
if (!immediate._destroyed) {
// eslint-disable-next-line no-undef
clearImmediate(immediate);
- reject(lazyDOMException('AbortError'));
+ reject(lazyDOMException('The operation was aborted', 'AbortError'));
}
}, { once: true });
}