68 lines
2.0 KiB
Plaintext
68 lines
2.0 KiB
Plaintext
BASH PATCH REPORT
|
|
=================
|
|
|
|
Bash-Release: 4.0
|
|
Patch-ID: bash40-027
|
|
|
|
Bug-Reported-by: jim@jim.sh
|
|
Bug-Reference-ID: <200905262140.n4QLeO4X030664@psychosis.jim.sh>
|
|
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2009-05/msg00074.html
|
|
|
|
Bug-Description:
|
|
|
|
There are occasional cursor positioning errors when using readline's
|
|
horizontal scroll mode.
|
|
|
|
Patch:
|
|
|
|
*** ../bash-4.0-patched/lib/readline/display.c 2009-05-22 12:32:25.000000000 -0400
|
|
--- lib/readline/display.c 2009-05-29 23:32:20.000000000 -0400
|
|
***************
|
|
*** 1190,1196 ****
|
|
line[t - 1] = '>';
|
|
|
|
! if (!rl_display_fixed || forced_display || lmargin != last_lmargin)
|
|
{
|
|
forced_display = 0;
|
|
update_line (&visible_line[last_lmargin],
|
|
&invisible_line[lmargin],
|
|
--- 1192,1200 ----
|
|
line[t - 1] = '>';
|
|
|
|
! if (rl_display_fixed == 0 || forced_display || lmargin != last_lmargin)
|
|
{
|
|
forced_display = 0;
|
|
+ o_cpos = _rl_last_c_pos;
|
|
+ cpos_adjusted = 0;
|
|
update_line (&visible_line[last_lmargin],
|
|
&invisible_line[lmargin],
|
|
***************
|
|
*** 1200,1203 ****
|
|
--- 1204,1214 ----
|
|
0);
|
|
|
|
+ if ((MB_CUR_MAX > 1 && rl_byte_oriented == 0) &&
|
|
+ cpos_adjusted == 0 &&
|
|
+ _rl_last_c_pos != o_cpos &&
|
|
+ _rl_last_c_pos > wrap_offset &&
|
|
+ o_cpos < prompt_last_invisible)
|
|
+ _rl_last_c_pos -= prompt_invis_chars_first_line; /* XXX - was wrap_offset */
|
|
+
|
|
/* If the visible new line is shorter than the old, but the number
|
|
of invisible characters is greater, and we are at the end of
|
|
*** ../bash-4.0/patchlevel.h 2009-01-04 14:32:40.000000000 -0500
|
|
--- patchlevel.h 2009-02-22 16:11:31.000000000 -0500
|
|
***************
|
|
*** 26,30 ****
|
|
looks for to find the patch level (for the sccs version string). */
|
|
|
|
! #define PATCHLEVEL 26
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|
|
--- 26,30 ----
|
|
looks for to find the patch level (for the sccs version string). */
|
|
|
|
! #define PATCHLEVEL 27
|
|
|
|
#endif /* _PATCHLEVEL_H_ */
|