From be63a59e9c6648c01a38c733502b50610addcd33 Mon Sep 17 00:00:00 2001 From: Kacper Date: Fri, 16 Jan 2026 20:27:53 +0100 Subject: [PATCH] fix: improve process termination handling for Windows Updated the process termination logic in ClaudeUsageService to handle Windows environments correctly. The code now checks the operating system and calls the appropriate kill method, ensuring consistent behavior across platforms. --- apps/server/src/services/claude-usage-service.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/server/src/services/claude-usage-service.ts b/apps/server/src/services/claude-usage-service.ts index 64dceb6a..59f22f20 100644 --- a/apps/server/src/services/claude-usage-service.ts +++ b/apps/server/src/services/claude-usage-service.ts @@ -277,9 +277,14 @@ export class ClaudeUsageService { ptyProcess.write('\x1b'); // Send escape key // Fallback: if ESC doesn't exit (Linux), use SIGTERM after 2s + // Windows doesn't support signals, so just call kill() without args setTimeout(() => { if (!settled && ptyProcess && !ptyProcess.killed) { - ptyProcess.kill('SIGTERM'); + if (this.isWindows) { + ptyProcess.kill(); + } else { + ptyProcess.kill('SIGTERM'); + } } }, 2000); }