Christian Brabandt wrote:

> Hi,
> when calling :redraw in a BufAdd autocommand, this may cause several 
> E315 ml_get: invalid_lnum messages. Here is a backtrack
> 
> Here is a backtrace:
> 
> (gdb) bt
> #0  ml_get_buf (buf=0xedf300, lnum=2, will_change=0) at memline.c:2469
> #1  0x00000000004cf014 in plines_win_nofold (wp=0x897bf0, lnum=2) at 
> misc1.c:2008
> #2  0x00000000004cefbf in plines_win_nofill (wp=0x897bf0, lnum=2, 
> winheight=1) at misc1.c:1991
[...]
> #17 0x00000000004979b6 in apply_autocmds (event=EVENT_BUFADD, fname=0x0, 
> fname_io=0x0, force=0, buf=0xedf300) at fileio.c:9033
> #18 0x0000000000410bd5 in set_buflisted (on=1) at buffer.c:5805
> #19 0x000000000045adff in do_ecmd (fnum=4, ffname=0x0, sfname=0x0, eap=0x0, 
> newlnum=1, flags=1, oldwin=0x897bf0) at ex_cmds.c:3615
> #20 0x000000000045a555 in getfile (fnum=4, ffname=0x0, sfname=0x0, setpm=1, 
> lnum=1, forceit=0) at ex_cmds.c:3189
[...]
> 
> Here is a patch, that disables redrawing for BufAdd autocommands. I am
> not sure, this is the correct solution however.

We already increment RedrawingDisabled a bit further down in do_ecmd.  I
think we should move it up.

-- 
hundred-and-one symptoms of being an internet addict:
152. You find yourself falling for someone you've never seen or hardly
     know, but, boy can he/she TYPE!!!!!!

 /// 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