Skip to content

Commit 7074dc2

Browse files
committed
Fix Windows: taskkill self-kill + soak missing build deps
1. taskkill /IM killed the install process itself — now uses /FI "PID ne <self>" to exclude own process 2. Windows soak jobs missing clang, zlib, make packages — added to all soak-quick-windows and soak-asan-windows MSYS2 installs 3. Both dry-run.yml and release.yml fixed
1 parent 5f9da0e commit 7074dc2

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

.github/workflows/dry-run.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -582,7 +582,10 @@ jobs:
582582
msystem: CLANG64
583583
path-type: inherit
584584
install: >-
585+
mingw-w64-clang-x86_64-clang
586+
mingw-w64-clang-x86_64-zlib
585587
mingw-w64-clang-x86_64-python3
588+
make
586589
git
587590
coreutils
588591
@@ -671,7 +674,10 @@ jobs:
671674
msystem: CLANG64
672675
path-type: inherit
673676
install: >-
677+
mingw-w64-clang-x86_64-clang
678+
mingw-w64-clang-x86_64-zlib
674679
mingw-w64-clang-x86_64-python3
680+
make
675681
git
676682
coreutils
677683
- name: Build (ASan, no LeakSan on Windows)

.github/workflows/release.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -579,7 +579,10 @@ jobs:
579579
msystem: CLANG64
580580
path-type: inherit
581581
install: >-
582+
mingw-w64-clang-x86_64-clang
583+
mingw-w64-clang-x86_64-zlib
582584
mingw-w64-clang-x86_64-python3
585+
make
583586
git
584587
coreutils
585588
- name: Build (release mode)
@@ -662,7 +665,10 @@ jobs:
662665
msystem: CLANG64
663666
path-type: inherit
664667
install: >-
668+
mingw-w64-clang-x86_64-clang
669+
mingw-w64-clang-x86_64-zlib
665670
mingw-w64-clang-x86_64-python3
671+
make
666672
git
667673
coreutils
668674
- name: Build (ASan, no LeakSan on Windows)

src/cli/cli.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2268,7 +2268,12 @@ static int cbm_macos_adhoc_sign(const char *binary_path) {
22682268

22692269
static int cbm_kill_other_instances(void) {
22702270
#ifdef _WIN32
2271-
const char *argv[] = {"taskkill", "/IM", "codebase-memory-mcp.exe", "/F", NULL};
2271+
/* taskkill /IM kills ALL matching processes INCLUDING self.
2272+
* Use /FI filter to exclude our own PID. */
2273+
char pid_filter[64];
2274+
snprintf(pid_filter, sizeof(pid_filter), "PID ne %lu", (unsigned long)GetCurrentProcessId());
2275+
const char *argv[] = {"taskkill", "/F", "/FI", "IMAGENAME eq codebase-memory-mcp.exe",
2276+
"/FI", pid_filter, NULL};
22722277
(void)cbm_exec_no_shell(argv);
22732278
return 0;
22742279
#else

0 commit comments

Comments
 (0)