Closed
Description
- VS Code Version: 1.54.1
- OS Version: macOS 10.15.17
Steps to Reproduce:
- Upgrade to VSCode 1.54.1 from 1.53
- A few of our extensions are failing to start because spawned shell script processes do not work
Does this issue occur when all extensions are disabled?: No
We run a few extensions (including an LSP server) which essentially spawn an external process executing shell wrapper scripts and attempts to manipulate its standard IO.
Since upgrading to 1.54.1 we have noticed a strange behavior where when writing to the external process stdin we get EBADF
error. This seems specifically to only occur when attempting to execute shell script directly as when we modify the spawn (or similar functions) to invoke the script via bash
directly it works fine.
This is illustrated by the following test cases executed while debugging VSCode:
> cp.execFile("cat", ['-'], options, cb).stdin.write("foo\n")
true
> cp.execFile("scripts/bin/wrapper.sh", ["cat", "-"], options, cb).stdin.write("foo\n")
Uncaught Error: write EBADF
> cp.execFile("bash", ["scripts/bin/wrapper.sh", "cat", "-"], options, cb).stdin.write("foo\n")
true
Where wrapper.sh
ultimately will exec
the rest of the command line.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
✔️ Done / Deferred