forked from puppetlabs-toy-chest/wash
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Make Wash daemon part of the shell session
When `wash` is run, it starts a shell as a child process where all the action happens. It then stays running as a daemon to handle Wash-specific requests through FUSE and the socket API. However if it needs to prompt for input, it has trouble because it's TTY is not the same as the one handling input (the child shell). We previously addressed that by temporarily transferring control of input to the Wash daemon, but that had some problems - it only worked when a plugin requested input using Wash's helper - if the process that triggered the plugin activity tried to do something with stdin - like MacVim appears to on startup - it would fail Reparent the Wash daemon to have a new session under the new shell so they share the same TTY. Prompts for input now work wherever they're triggered from. MacVim still behaves a little strangely if you get a prompt when opening it, but I'm not sure what to do about it. Fixes puppetlabs-toy-chest#623. Signed-off-by: Michael Smith <[email protected]>
- Loading branch information
1 parent
fc97023
commit 836c360
Showing
2 changed files
with
75 additions
and
56 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters