Fix \watch's interaction with libedit on ^C.
authorThomas Munro <tmunro@postgresql.org>
Sun, 10 Jul 2022 04:30:03 +0000 (16:30 +1200)
committerThomas Munro <tmunro@postgresql.org>
Sun, 10 Jul 2022 04:53:39 +0000 (16:53 +1200)
commite5b5b4448ce0981a7a89a8c43df77d71bfa9cc96
tree0202daa12993dd03745d4581190eab763d7b2150
parent49d296d8e8723b7517ecc074be4694349d6a1cd2
Fix \watch's interaction with libedit on ^C.

When you hit ^C, the terminal driver in Unix-like systems echoes "^C" as
well as sending an interrupt signal (depending on stty settings).  At
least libedit (but maybe also libreadline) is then confused about the
current cursor location, and corrupts the display if you try to scroll
back.  Fix, by moving to a new line before the next prompt is displayed.

Back-patch to all supported released.

Author: Pavel Stehule <pavel.stehule@gmail.com>
Reported-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/3278793.1626198638%40sss.pgh.pa.us
src/bin/psql/command.c