To: vim-dev@vim.org
Subject: patch 7.1.056
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
------------
Patch 7.1.056
Problem: More prompt does not behave correctly after scrolling back.
(Randall W. Morris)
Solution: Avoid lines_left becomes negative. (Chris Lubinski) Don't check
mp_last when deciding to show the more prompt. (Martin Toft)
Files: src/message.c
*** ../vim-7.1.055/src/message.c Sun Aug 5 19:20:04 2007
--- src/message.c Tue Aug 7 21:52:10 2007
***************
*** 1878,1884 ****
/* output postponed text */
t_puts(&t_col, t_s, s, attr);
! /* When no more prompt an no more room, truncate here */
if (msg_no_more && lines_left == 0)
break;
--- 1878,1884 ----
/* output postponed text */
t_puts(&t_col, t_s, s, attr);
! /* When no more prompt and no more room, truncate here */
if (msg_no_more && lines_left == 0)
break;
***************
*** 1927,1933 ****
* If screen is completely filled and 'more' is set then wait
* for a character.
*/
! --lines_left;
if (p_more && lines_left == 0 && State != HITRETURN
&& !msg_no_more && !exmode_active)
{
--- 1927,1934 ----
* If screen is completely filled and 'more' is set then wait
* for a character.
*/
! if (lines_left > 0)
! --lines_left;
if (p_more && lines_left == 0 && State != HITRETURN
&& !msg_no_more && !exmode_active)
{
***************
*** 2234,2240 ****
{
msgchunk_T *mp;
! /* Only show somethign if there is more than one line, otherwise it looks
* weird, typing a command without output results in one line. */
mp = msg_sb_start(last_msgchunk);
if (mp == NULL || mp->sb_prev == NULL)
--- 2235,2241 ----
{
msgchunk_T *mp;
! /* Only show something if there is more than one line, otherwise it looks
* weird, typing a command without output results in one line. */
mp = msg_sb_start(last_msgchunk);
if (mp == NULL || mp->sb_prev == NULL)
***************
*** 2622,2628 ****
}
}
! if (scroll < 0 || (scroll == 0 && mp_last != NULL))
{
/* displayed the requested text, more prompt again */
screen_fill((int)Rows - 1, (int)Rows, 0,
--- 2623,2629 ----
}
}
! if (scroll <= 0)
{
/* displayed the requested text, more prompt again */
screen_fill((int)Rows - 1, (int)Rows, 0,
*** ../vim-7.1.055/src/version.c Mon Aug 6 22:27:13 2007
--- src/version.c Tue Aug 7 21:57:02 2007
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 56,
/**/
--
From "know your smileys":
:-| :-| Deja' vu!
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ download, build and distribute -- http://www.A-A-P.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///