Bram Moolenaar schrieb:
Andy Wokula wrote:
GVim runs into an endless loop if I do the following:
" clean startup
:new " at least two windows
:windo throw "foo"
Error detected while processing :
E605: Exception not caught: foo
E605: Exception not caught: foo
E605: Exception not caught: foo
E605: Exception not caught: foo
...
See patch below.
Another example:
" clean startup
:set modified
:bot new
:try
: windo enew
" -> go and kill GVim in the task manager
(does not happen if :bot new is replaced by :abo new )
Solved with the same patch. Please verify.
*** ../vim-7.0.240/src/ex_cmds2.c Tue Feb 13 06:21:24 2007
--- src/ex_cmds2.c Wed May 2 22:04:38 2007
***************
*** 2287,2292 ****
--- 2287,2294 ----
if (!win_valid(wp))
break;
win_goto(wp);
+ if (curwin != wp)
+ break; /* something must be wrong */
wp = curwin->w_next;
}
else if (eap->cmdidx == CMD_tabdo)
Great, the patch works (examples tested).
--
Thanks,
Andy
EOM