[Vim-vms] Vim 6.2 crash

Coen Engelbarts coen.engelbarts at cmg.nl
Tue Jan 13 16:47:25 CET 2004


Hi all,

For the vim-dev readers:
Does the file name expansion use vim's regexp code?
Can you tell me which function or source file does the file name expansion?

That's rather direct, but I'm a bit worried that you will all stop 
reading after the word "VMS" ;-)


I think I found a new bug in vim/VMS 6.2.106 (I use the downloaded
binary from http://www.polarfox.com/vim/).
The following actions consistently crash vim:
In the VIM directory, start vim and type:
     :n syntax/<CTRL-D>
For a few moments the prompt will show
     :n syntax/...
and finally
     :n \[.syntax]2html.vim
If you now press <CTRL-D> or <TAB>, vim will crash:
     Vim: Caught deadly signal BUS

     Vim: Finished.

In short, the command:
     :n \[.syntax]<CTRL-D>
crashes vim on VMS.

I do not understand how/why/where vim inserts the '\' before the '[' and 
not before the ']'. I don't think that vim needs it to understand VMS 
path names.
AFAIK, escaping '[' to '\[' is only necessary in regular expressions. 
Does the file name expansion use vim's regexp code?


The function vms_unix_mixed_filespec() in os_vms.c expands pathnames 
from Unix to VMS format, but it does not seem to insert a '\'.
The line
     *out++ = '[';	    /* Yes, denote a Vms subdirectory */
looked suspicious to me, but I think the *out++ should correctly write 
'[' before incrementing 'out' (see e.g. 
http://www.eskimo.com/~scs/C-faq/q4.3.html)

Does anybody know what's happening?

Thanks in advance,

Coen





More information about the Vim-vms mailing list