Hirohito Higashi wrote:

> How to reproduce:
> - Prepare the following script file
>   $ cat sample.vim
> 
> e aa.txt
> augroup sample
>   autocmd!
>   autocmd BufNew * tabedit cc.txt

Hmm, starting to edit another file in a BufNew autocmd event is just
asking for trouble.  In general this should not be allowed.  The only
reason it's not an error is to allow for using a temp buffer to do some
work.

> augroup END
> 
> normal! i1
> tabedit bb.txt
> 
> - Run vanilla Vim with above script file
>   $ vim -Nu NONE -S sample.vim
> 
> Expected behavior (I think):
> - Three tabpages is opened.
>   1st: aa.txt (modified)
>   2nd: bb.txt (not modified) <-- current tabpage
>   3rd: cc.txt (not modified)
> 
> Actual behavior:
> - Three tabpages is opened.
>   1st: aa.txt (modified)
>   2nd: aa.txt (modified)
>   3rd: cc.txt (not modified) <-- current tabpage
> 
> 
> I wrote a patch and test.
> Check it please.
> 
> NOTE 1: This issue was reported by Norio Takagi.
> NOTE 2: The following part of the patch is a change not related to the main 
> topic :-)
> --- a/src/buffer.c
> +++ b/src/buffer.c
> @@ -451,7 +451,7 @@ close_buffer(
>      int              nwindows;
>      bufref_T bufref;
>  # ifdef FEAT_WINDOWS
> -    int              is_curwin = (curwin!= NULL && curwin->w_buffer == buf);
> +    int              is_curwin = (curwin != NULL && curwin->w_buffer == buf);
>      win_T    *the_curwin = curwin;
>      tabpage_T        *the_curtab = curtab;
>  # endif
> @@ -1649,10 +1649,11 @@ set_curbuf(buf_T *buf, int action)
>  #ifdef FEAT_AUTOCMD
>      if (!apply_autocmds(EVENT_BUFLEAVE, NULL, NULL, FALSE, curbuf)
>  # ifdef FEAT_EVAL
> -         || (bufref_valid(&bufref) && !aborting()))
> +         || (bufref_valid(&bufref) && !aborting())
>  # else
> -         || bufref_valid(&bufref))
> +         || bufref_valid(&bufref)
>  # endif
> +       )
>  #endif
>      {
>  #ifdef FEAT_SYN_HL

I don't think we should even try fixing this.  I suspect there will be
other problems.

-- 
Did you ever stop to think...  and forget to start again?
                                  -- Steven Wright

 /// Bram Moolenaar -- [email protected] -- 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    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui