To: vim_dev@googlegroups.com
Subject: Patch 7.3.066
Fcc: outbox
From: Bram Moolenaar <Bram@moolenaar.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
------------
Patch 7.3.066
Problem: Crash when changing to another window while in a :vimgrep command.
(Christian Brabandt)
Solution: When wiping out the dummy before, remove it from aucmd_win.
Files: src/quickfix.c
*** ../vim-7.3.065/src/quickfix.c 2010-09-21 16:56:29.000000000 +0200
--- src/quickfix.c 2010-11-24 16:27:40.000000000 +0100
***************
*** 3432,3437 ****
--- 3432,3438 ----
char_u *fname;
{
buf_T *newbuf;
+ buf_T *newbuf_to_wipe = NULL;
int failed = TRUE;
aco_save_T aco;
***************
*** 3468,3482 ****
failed = FALSE;
if (curbuf != newbuf)
{
! /* Bloody autocommands changed the buffer! */
! if (buf_valid(newbuf))
! wipe_buffer(newbuf, FALSE);
newbuf = curbuf;
}
}
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
}
if (!buf_valid(newbuf))
--- 3469,3487 ----
failed = FALSE;
if (curbuf != newbuf)
{
! /* Bloody autocommands changed the buffer! Can happen when
! * using netrw and editing a remote file. Use the current
! * buffer instead, delete the dummy one after restoring the
! * window stuff. */
! newbuf_to_wipe = newbuf;
newbuf = curbuf;
}
}
/* restore curwin/curbuf and a few other things */
aucmd_restbuf(&aco);
+ if (newbuf_to_wipe != NULL && buf_valid(newbuf_to_wipe))
+ wipe_buffer(newbuf_to_wipe, FALSE);
}
if (!buf_valid(newbuf))
*** ../vim-7.3.065/src/version.c 2010-11-24 15:50:54.000000000 +0100
--- src/version.c 2010-11-24 16:30:44.000000000 +0100
***************
*** 716,717 ****
--- 716,719 ----
{ /* Add new patch number below this line */
+ /**/
+ 66,
/**/
--
CART DRIVER: Bring out your dead!
We follow the cart through a wretched, impoverished plague-ridden village.
A few starved mongrels run about in the mud scavenging. In the open
doorway of one house perhaps we jug glimpse a pair of legs dangling from
the ceiling. In another doorway an OLD WOMAN is beating a cat against a
wall rather like one does with a mat. The cart passes round a dead donkey
or cow in the mud. And a MAN tied to a cart is being hammered to death by
four NUNS with huge mallets.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///