Mercurial > vim
changeset 1068:efd0ce477ae7 v7.0.194
updated for version 7.0-194
author | vimboss |
---|---|
date | Tue, 13 Feb 2007 03:01:39 +0000 |
parents | 0b056c1350dd |
children | f628d19361d9 |
files | src/memline.c src/version.c |
diffstat | 2 files changed, 22 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/memline.c +++ b/src/memline.c @@ -2054,13 +2054,21 @@ ml_get_buf(buf, lnum, will_change) linenr_T lnum; int will_change; /* line will be changed */ { - bhdr_T *hp; - DATA_BL *dp; - char_u *ptr; + bhdr_T *hp; + DATA_BL *dp; + char_u *ptr; + static int recursive = 0; if (lnum > buf->b_ml.ml_line_count) /* invalid line number */ { - EMSGN(_("E315: ml_get: invalid lnum: %ld"), lnum); + if (recursive == 0) + { + /* Avoid giving this message for a recursive call, may happen when + * the GUI redraws part of the text. */ + ++recursive; + EMSGN(_("E315: ml_get: invalid lnum: %ld"), lnum); + --recursive; + } errorret: STRCPY(IObuff, "???"); return IObuff; @@ -2088,7 +2096,14 @@ errorret: */ if ((hp = ml_find_line(buf, lnum, ML_FIND)) == NULL) { - EMSGN(_("E316: ml_get: cannot find line %ld"), lnum); + if (recursive == 0) + { + /* Avoid giving this message for a recursive call, may happen + * when the GUI redraws part of the text. */ + ++recursive; + EMSGN(_("E316: ml_get: cannot find line %ld"), lnum); + --recursive; + } goto errorret; }