Yegappan Lakshmanan wrote:
> I am observing that Vim crashes when trying to complete the arguments to > an user defined command in the cmdline window. I see this with Vim 7.1.180. > > To reproduce this crash, use the following sample code: > > -------------------- crash.vim ----------------------------------------- > function! s:Myfunc(ArgLead, CmdLine, CursorPos) > return ["apple", "orange", "grapes"] > endfunction > > command! -nargs=1 -complete=customlist,s:Myfunc Crashvim :echo '<args>' > ----------------------------------------------------------------------------- > > After sourcing the above file, open the cmdline window using "q:'. > In the cmdline window, enter the "Crashvim" command and then > try to complete the arguments to the command by pressing <Tab>. > Now Vim crashes with the following traceback: > > Program received signal SIGSEGV, Segmentation fault. > 0x00072c00 in call_user_expand_func (user_expand_func=0x4b774 > <call_func_retlist>, xp=0x1cc924, num_file=0xffbee138, > file=0xffbee134) at ex_getln.c:4669 > 4669 keep = ccline.cmdbuff[ccline.cmdlen]; > (cisco-6.1.0-gdb) bt > #0 0x00072c00 in call_user_expand_func (user_expand_func=0x4b774 > <call_func_retlist>, xp=0x1cc924, num_file=0xffbee138, > file=0xffbee134) at ex_getln.c:4669 > #1 0x000735d4 in ExpandFromContext (xp=0x1cc924, pat=0x392f70 "^", > num_file=0xffbee138, file=0xffbee134, options=-4267724) at > ex_getln.c:4758 > #2 0x00073b3c in expand_cmdline (xp=0x1cc924, str=0x37b310 "Crashvim > ", col=3747696, matchcount=0xffbee138, matches=0xffbee134) at > ex_getln.c:4228 > #3 0x0002a804 in ins_compl_next (allow_get_expansion=1, count=0, > insert_match=1) at edit.c:4010 > #4 0x0002b368 in ins_complete (c=22) at edit.c:4585 > #5 0x00030df8 in edit (cmdchar=1912832, startln=1911808, count=1) at > edit.c:1338 > #6 0x000e5310 in op_change (oap=0xffbee5f8) at ops.c:2598 > #7 0x000dc548 in do_pending_operator (cap=0xffbee548, old_col=0, > gui_yank=0) at normal.c:1909 > #8 0x000dd88c in normal_cmd (oap=0xffbee5f8, toplevel=1) at normal.c:1174 > #9 0x0009c5c0 in main_loop (cmdwin=1, noexmode=0) at main.c:1181 > #10 0x00078e6c in getcmdline (firstc=58, count=1, indent=0) at ex_getln.c:6052 > #11 0x00067e84 in do_cmdline (cmdline=0x0, getline=0x79bd0 > <getexline>, cookie=0x0, flags=0) at ex_docmd.c:995 > #12 0x000d9344 in nv_colon (cap=0xffbeedf8) at normal.c:5175 > #13 0x000dd808 in normal_cmd (oap=0xffbeeea8, toplevel=1) at normal.c:1148 > #14 0x0009c5c0 in main_loop (cmdwin=0, noexmode=0) at main.c:1181 > #15 0x000a0764 in main (argc=1911808, argv=0x1) at main.c:940 > > Is anyone else able to reproduce this crash? It appears user defined completion never worked in Insert mode. I'll make a patch. -- [The rest of the ARMY stand around looking at a loss.] INSPECTOR END OF FILM: (picks up megaphone) All right! Clear off! Go on! "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD /// 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 /// --~--~---------~--~----~------------~-------~--~----~ You received this message from the "vim_dev" maillist. For more information, visit http://www.vim.org/maillist.php -~----------~----~----~----~------~----~------~--~---