summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvimboss <devnull@localhost>2007-09-16 11:27:42 +0000
committervimboss <devnull@localhost>2007-09-16 11:27:42 +0000
commitadade0e2f68ca6d2e760be4edfceea8c60c442f7 (patch)
treeceec7dad0272f4f6cd8d9d70be57c4d3b2cbeff6
parentbdcd71e8a517cc907db8c01d2ef0f29bc3f59780 (diff)
downloadvim-adade0e2f68ca6d2e760be4edfceea8c60c442f7.tar.gz
updated for version 7.1-111v7.1.111v7-1-111
-rw-r--r--src/quickfix.c24
-rw-r--r--src/version.c2
2 files changed, 24 insertions, 2 deletions
diff --git a/src/quickfix.c b/src/quickfix.c
index 1ae175b5..c3cee13a 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -1612,8 +1612,8 @@ qf_jump(qi, dir, errornr, forceit)
}
/*
- * If there is only one window and is the quickfix window, create a new
- * one above the quickfix window.
+ * If there is only one window and it is the quickfix window, create a
+ * new one above the quickfix window.
*/
if (((firstwin == lastwin) && bt_quickfix(curbuf)) || !usable_win)
{
@@ -2981,6 +2981,7 @@ ex_vimgrep(eap)
buf_T *buf;
int duplicate_name = FALSE;
int using_dummy;
+ int redraw_for_dummy = FALSE;
int found_match;
buf_T *first_match_buf = NULL;
time_t seconds = 0;
@@ -3097,6 +3098,7 @@ ex_vimgrep(eap)
/* Remember that a buffer with this name already exists. */
duplicate_name = (buf != NULL);
using_dummy = TRUE;
+ redraw_for_dummy = TRUE;
#if defined(FEAT_AUTOCMD) && defined(FEAT_SYN_HL)
/* Don't do Filetype autocommands to avoid loading syntax and
@@ -3243,11 +3245,29 @@ ex_vimgrep(eap)
if (qi->qf_lists[qi->qf_curlist].qf_count > 0)
{
if ((flags & VGR_NOJUMP) == 0)
+ {
+ buf = curbuf;
qf_jump(qi, 0, 0, eap->forceit);
+ if (buf != curbuf)
+ /* If we jumped to another buffer redrawing will already be
+ * taken care of. */
+ redraw_for_dummy = FALSE;
+ }
}
else
EMSG2(_(e_nomatch2), s);
+ /* If we loaded a dummy buffer into the current window, the autocommands
+ * may have messed up things, need to redraw and recompute folds. */
+ if (redraw_for_dummy)
+ {
+#ifdef FEAT_FOLDING
+ foldUpdateAll(curwin);
+#else
+ redraw_later(NOT_VALID);
+#endif
+ }
+
theend:
vim_free(regmatch.regprog);
}
diff --git a/src/version.c b/src/version.c
index d4757007..748d8638 100644
--- a/src/version.c
+++ b/src/version.c
@@ -667,6 +667,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 111,
+/**/
110,
/**/
109,