Hi Kostik, * Kostik Belousov <kostikbel_at_gmail.com> wrote: > I run a screen(1), where I tried to copy large portion of output and > paste it into vi. This resulted in the loss of the characters at random > points inside the pasted text. I already took some time to investigate the issue. I have attached a patch that should already improve the situation: - write() on a pseudo-terminal master also accounted the data that was read into the kernel, but couldn't be passed to the TTY (which is likely to happen in non-blocking mode). - There was also a small unrelated issue; input on a TTY which has been configured in block (bypass) mode wouldn't set the input high water mark. For some reason, the data loss doesn't occur when SSHing to myself multiple times, but still causes screen(1) to drop some bytes later on. Even though it's always very easy to blame other applications, I suspect this may be because I reduced the input buffer size from 8 KB to 2 KB per pseudo-terminal. Maybe screen(1) can't deal with this. To be investigated... -- Ed Schouten <ed_at_80386.nl> WWW: http://80386.nl/
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:53 UTC