Skip to content

Commit b9b68c7

Browse files
committed
fix: fixed usage of abort controller
1 parent d8c63f5 commit b9b68c7

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

index.js

+16-5
Original file line numberDiff line numberDiff line change
@@ -1146,8 +1146,8 @@ class Tangerine extends dns.promises.Resolver {
11461146
// <https://github.com/nodejs/undici/issues/3353>
11471147
// eslint-disable-next-line no-await-in-loop, max-depth
11481148
if (body && typeof body.dump === 'function') await body.dump();
1149-
// eslint-disable-next-line max-depth
1150-
if (!abortController.signal.aborted) abortController.abort();
1149+
// NOTE: we don't need to do this (causes uncaught exception)
1150+
// if (!abortController.signal.aborted) abortController.abort();
11511151
break;
11521152
}
11531153

@@ -1231,7 +1231,8 @@ class Tangerine extends dns.promises.Resolver {
12311231
// https://github.com/mafintosh/dns-packet/issues/72
12321232
return packet.decode(buffer);
12331233
} catch (_err) {
1234-
if (!abortController.signal.aborted) abortController.abort();
1234+
// NOTE: we don't need to do this (causes uncaught exception)
1235+
// if (!abortController.signal.aborted) abortController.abort();
12351236
debug(_err, { name, rrtype, ecsSubnet });
12361237
if (this.options.returnHTTPErrors) throw _err;
12371238
const err = this.constructor.createError(
@@ -1255,7 +1256,13 @@ class Tangerine extends dns.promises.Resolver {
12551256
// (instead they are called with "ABORT_ERR"; see ABORT_ERROR_CODES)
12561257
cancel() {
12571258
for (const abortController of this.abortControllers) {
1258-
if (!abortController.signal.aborted) abortController.abort();
1259+
if (!abortController.signal.aborted) {
1260+
try {
1261+
abortController.abort();
1262+
} catch (err) {
1263+
this.options.logger.debug(err);
1264+
}
1265+
}
12591266
}
12601267
}
12611268

@@ -1273,7 +1280,11 @@ class Tangerine extends dns.promises.Resolver {
12731280
parentAbortController.signal.addEventListener(
12741281
'abort',
12751282
() => {
1276-
abortController.abort();
1283+
try {
1284+
abortController.abort();
1285+
} catch (err) {
1286+
this.options.logger.debug(err);
1287+
}
12771288
},
12781289
{ once: true }
12791290
);

0 commit comments

Comments
 (0)