Re: psql: Buggy interactions with wraparound in maximized gnome terminals.
От | Tom Lane |
---|---|
Тема | Re: psql: Buggy interactions with wraparound in maximized gnome terminals. |
Дата | |
Msg-id | 26175.1576964429@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: psql: Buggy interactions with wraparound in maximized gnometerminals. (Chet Ramey <chet.ramey@case.edu>) |
Ответы |
Re: psql: Buggy interactions with wraparound in maximized gnome terminals.
|
Список | pgsql-bugs |
Chet Ramey <chet.ramey@case.edu> writes: > On 12/20/19 4:48 PM, Tomas Zubiri wrote: >> This is probably hard to reproduce, but I entered a state where the >> command I was writing was wrapping around at the 81st character while >> in full screen, and the 1st character was being overwritten.This did >> not affect the command sent to the server, but I would not have a way >> to see what command I just entered. > It seems like the readline SIGWINCH handler, which causes it to update its > idea of the screen dimensions, isn't being called. I can't reproduce this > using readline and bash, and I don't know what postgres does with its > signal handling, or how it configures readline's signal handling (I assume > it doesn't do anything special). We don't touch SIGWINCH at all, so if readline sets up a handler for that, it ought to behave as expected. I notice though that we do this just before each readline() call: /* * Some versions of readline don't notice SIGWINCH signals that arrive * when not actively reading input. The simplest fix is to always * re-read the terminal size. This leaves a window for SIGWINCH to be * missed between here and where readline() enables libreadline's * signal handler, but that's probably short enough to be ignored. */ #ifdef HAVE_RL_RESET_SCREEN_SIZE rl_reset_screen_size(); #endif Is it conceivable that that bollixes things somehow, on some builds? (I don't think the OP specified which readline and/or Postgres version he was using.) regards, tom lane
В списке pgsql-bugs по дате отправления: