Skip to content

Commit 7826f4a

Browse files
fix(client): avoid memory leak with abort signals
1 parent 3fd4927 commit 7826f4a

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

src/client.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -532,9 +532,10 @@ export class Grid {
532532
controller: AbortController,
533533
): Promise<Response> {
534534
const { signal, method, ...options } = init || {};
535-
if (signal) signal.addEventListener('abort', () => controller.abort());
535+
const abort = controller.abort.bind(controller);
536+
if (signal) signal.addEventListener('abort', abort, { once: true });
536537

537-
const timeout = setTimeout(() => controller.abort(), ms);
538+
const timeout = setTimeout(abort, ms);
538539

539540
const isReadableBody =
540541
((globalThis as any).ReadableStream && options.body instanceof (globalThis as any).ReadableStream) ||

0 commit comments

Comments
 (0)