Files
amethyst/desktopApp/src
ClaudeandVitor Pamplona b9e0a8ecbc fix(desktop): kill the whole process tree when a now-playing command times out
On Linux /bin/sh is dash, which forks the command instead of exec-ing it.
The timeout watchdog killed only the shell, the orphaned child kept stdout
open, and runCommand's read waited for it however long it ran, so
OsNowPlayingReaderTest.runCommandGivesUpOnAHungCommand failed on the
ubuntu desktop CI job (30s instead of ~1s). macOS's sh execs the command,
which is why it passed there. Destroy the descendants before the process,
on timeout and in the finally block.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017KKAj1seHQLCcVEiMeePEE
2026-10-01 14:36:33 -04:00
..