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)


-- 
The 50-50-90 rule: Anytime you have a 50-50 chance of getting
something right, there's a 90% probability you'll get it wrong.

 /// Bram Moolenaar -- [EMAIL PROTECTED] -- 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    ///

Reply via email to