| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit re-implements the entire tty driver for both Unix
and Windows to use a common nif instead of two seperate drivers.
The Unix implementation works pretty much as it did before only that
a lot more of the terminal logic has been moved from Erlang to C.
The windows implementation now uses Windows Terminal Sequences, i.e.
the same sequences as most Unixes to control the terminal. This means
that werl.exe is no longer needed and erl.exe will have the "newshell"
with all the features normally only found on Unix.
The new implementation also uses dirty I/O threads for all I/O which
means that it can leave the FDs in blocking mode. This fixes problems
when the Erlang tty is interacting with other systems such as bash.
Closes #3150
Closes #3390
Closes #4343
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
to increase the probablity of a nice badarg
from erlang:port_control.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added a put_chars_sync to the protocol that can be used to
talk to user_drv and made group use it. This is needed in order
to guarantee that bytes has been pushed to the tty port when
doing something like this:
io:format("halting\n"),erlang:halt(0).
Before this change the halting message could be lost in the message
queue of the user_drv process, this is no longer possible.
This commit also fixes ssh_cli as that plugs itself in as a user_drv
process.
OTP-12240
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Still does not run, just compiles.
|
|
|