diff options
author | GabrielDertoni | 2022-10-09 03:23:02 +0000 |
---|---|---|
committer | Michael Davis | 2022-10-26 01:24:44 +0000 |
commit | 9fae4b81189e9ba02718595a09840535f6fb558b (patch) | |
tree | 95d3529519e6bfbe651afc0a2fee31b0827d7c59 /helix-term/src/keymap.rs | |
parent | c47ca331374b28a70c8bb9fd0fe991c478c696a1 (diff) |
fix: terminal freezing on `shell_insert_output`
This bug occurs on `shell_insert_output` and `shell_append_output`
commands.
The previous implementation would create a child process using the Rust
stdlib's `Command` builder. However, when nothing should be piped in
from the editor, the default value for `stdin` would be used. According
to the Rust stdlib documentation that is `Stdio::inherit` which will
make the child process inherit the parent process' stdin. This would
cause the terminal to freeze.
This change will set the child process' stdin to `Stdio::null` whenever
it doesn't pipe it. In the `if` statement where this change was made
there was an extra condition for windows that I am not sure if would
require some special treatment.
Diffstat (limited to 'helix-term/src/keymap.rs')
0 files changed, 0 insertions, 0 deletions