diff --git a/src/util/clipboard.test.ts b/src/util/clipboard.test.ts index a024d37..95a52fd 100644 --- a/src/util/clipboard.test.ts +++ b/src/util/clipboard.test.ts @@ -20,7 +20,7 @@ describe("writeClipboard", () => { proc.kill = vi.fn(); proc.stdin = { end: vi.fn(() => { - queueMicrotask(() => proc.emit("close", cmd === "wl-copy" ? 0 : 1)); + queueMicrotask(() => proc.emit("exit", cmd === "wl-copy" ? 0 : 1)); }), }; return proc; diff --git a/src/util/clipboard.ts b/src/util/clipboard.ts index 0c68009..d5ed029 100644 --- a/src/util/clipboard.ts +++ b/src/util/clipboard.ts @@ -47,7 +47,9 @@ function write(cmd: string, args: string[], text: string): Promise { }, 4000); timer.unref?.(); proc.on("error", () => done(false)); - proc.on("close", (code) => done(code === 0)); + const onFinish = (code: number | null = 0): void => done(code === 0); + proc.on("exit", onFinish); + proc.on("close", onFinish); proc.stdin?.end(text); } catch { resolve(false);