Skip to content

Commit c08f7c0

Browse files
fix(client): avoid memory leak with abort signals
1 parent 5c28aaa commit c08f7c0

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
@@ -599,9 +599,10 @@ export class ImageKit {
599599
controller: AbortController,
600600
): Promise<Response> {
601601
const { signal, method, ...options } = init || {};
602-
if (signal) signal.addEventListener('abort', () => controller.abort());
602+
const abort = controller.abort.bind(controller);
603+
if (signal) signal.addEventListener('abort', abort, { once: true });
603604

604-
const timeout = setTimeout(() => controller.abort(), ms);
605+
const timeout = setTimeout(abort, ms);
605606

606607
const isReadableBody =
607608
((globalThis as any).ReadableStream && options.body instanceof (globalThis as any).ReadableStream) ||

0 commit comments

Comments
 (0)