Mercurial > vim
view src/testdir/test8.in @ 10221:fb1fde4fcff7 v8.0.0010
commit https://github.com/vim/vim/commit/680e015bfe19be6772d3bd754486fbd45c1a9d3b
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Sep 25 20:54:11 2016 +0200
patch 8.0.0010
Problem: Crash when editing file that starts with crypt yeader. (igor2x)
Solution: Check for length of text. (Christian Brabandt) Add a test.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 25 Sep 2016 21:00:04 +0200 |
parents | 1899acc5aebd |
children |
line wrap: on
line source
Test for BufWritePre autocommand that deletes or unloads the buffer. Test for BufUnload autocommand that unloads all other buffers. STARTTEST :so small.vim :au BufWritePre Xxx1 bunload :au BufWritePre Xxx2 bwipe /^start of A1:.,/end of/w! Xxx1 " write test file Xxx1 $r2:.,/end of/w! Xxx2 " write test file Xxx2 :e! Xxx2 " edit Xxx2 :bdel test8.in " delete this file from the buffer list :e Xxx1 " edit Xxx1 :w " write it, will unload it and give an error msg :w! test.out " Write contents of this file :e! Xxx2 " start editing Xxx2 :bwipe test.out " remove test.out from the buffer list :w " write it, will delete the buffer and give an error msg :w >>test.out " Append contents of this file :au! BufWritePre :func CloseAll() let i = 0 while i <= bufnr('$') if i != bufnr('%') && bufloaded(i) exe i . "bunload" endif let i += 1 endwhile endfunc :func WriteToOut() edit! test.out $put ='VimLeave done' write endfunc :set viminfo='100,nviminfo :au BufUnload * call CloseAll() :au VimLeave * call WriteToOut() :e small.vim :sp mbyte.vim :q :qa! ENDTEST start of Xxx test end of Xxx