Skip to content

Commit e536896

Browse files
Update lib/internal/fs/promises.js
Co-authored-by: Chemi Atlow <chemi@atlow.co.il>
1 parent cea3e1c commit e536896

1 file changed

Lines changed: 3 additions & 15 deletions

File tree

lib/internal/fs/promises.js

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1120,21 +1120,9 @@ function checkAborted(signal) {
11201120

11211121
async function raceWithSignal(opPromise, signal) {
11221122
if (!signal) return opPromise;
1123-
kResistStopPropagation ??= require('internal/event_target').kResistStopPropagation;
1124-
let onAbort;
1125-
const abortPromise = new Promise((_, reject) => {
1126-
onAbort = () => reject(new AbortError(undefined, { cause: signal.reason }));
1127-
signal.addEventListener('abort', onAbort, {
1128-
__proto__: null,
1129-
once: true,
1130-
[kResistStopPropagation]: true,
1131-
});
1132-
});
1133-
try {
1134-
return await SafePromiseRace([opPromise, abortPromise]);
1135-
} finally {
1136-
signal.removeEventListener('abort', onAbort);
1137-
}
1123+
const { promise: abortPromise, reject } = PromiseWithResolvers();
1124+
using _ = EventEmitter.addAbortListener(signal, () => reject(new AbortError(undefined, { cause: signal.reason })));
1125+
return await SafePromiseRace([opPromise, abortPromise]);
11381126
}
11391127

11401128
async function writeFileHandle(filehandle, data, signal, encoding) {

0 commit comments

Comments
 (0)