diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2011-10-12 18:19:20 +0400 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2011-10-12 18:19:20 +0400 |
commit | 5de3a1c10f07e4d48b313b9b68d43563b21d4250 (patch) | |
tree | 07bad7607b4217b37e8c806e94c94cc35f85edcb /winsup/cygwin/fhandler_console.cc | |
parent | 4add6f8db15841278eac9e5bd90f7361881ab226 (diff) |
* fhandler_console.cc (fhandler_console::cursor_set): Disable forcing
y to the current winBottom position. Explain why.
Diffstat (limited to 'winsup/cygwin/fhandler_console.cc')
-rw-r--r-- | winsup/cygwin/fhandler_console.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/winsup/cygwin/fhandler_console.cc b/winsup/cygwin/fhandler_console.cc index 9a8ddf8dc..c975fc479 100644 --- a/winsup/cygwin/fhandler_console.cc +++ b/winsup/cygwin/fhandler_console.cc @@ -1175,9 +1175,19 @@ fhandler_console::cursor_set (bool rel_to_top, int x, int y) COORD pos; dev_state.fillin_info (get_output_handle ()); +#if 0 + /* Setting y to the current winBottom here is the reason that the window + isn't scrolled back to the current cursor position like it's done in + any other terminal. Rather, the curser is forced to the bottom of the + currently scrolled region. This breaks the console buffer content if + output is generated while the user had the window scrolled back. This + behaviour is very old, it has no matching ChangeLog entry. + Just disable for now but keep the code in for future reference. */ if (y > dev_state.info.winBottom) y = dev_state.info.winBottom; - else if (y < 0) + else +#endif + if (y < 0) y = 0; else if (rel_to_top) y += dev_state.info.winTop; |