Mercurial > vim
view src/testdir/test77a.in @ 7500:ef568437e49a v7.4.1052
commit https://github.com/vim/vim/commit/04bff88df6211f64731bf8f5afa088e94496db16
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jan 5 20:46:16 2016 +0100
patch 7.4.1052
Problem: Illegal memory access with weird syntax command. (Dominique Pelle)
Solution: Check for column past end of line.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 05 Jan 2016 21:00:05 +0100 |
parents | 47a673b20e49 |
children | e705ea6e855b |
line wrap: on
line source
Inserts 2 million lines with consecutive integers starting from 1 (essentially, the output of GNU's seq 1 2000000), writes them to Xtest and writes its cksum to test.out. We need 2 million lines to trigger a call to mf_hash_grow(). If it would mess up the lines the checksum would differ. cksum is part of POSIX and so should be available on most Unixes. If it isn't available then the test will be skipped. VMS does not have CKSUM but has a built in CHECKSUM - it should be used STARTTEST :so small.vim :if !has("vms") : e! test.ok : w! test.out : qa! :endif :set fileformat=unix undolevels=-1 ggdG :let i = 1 :while i <= 2000000 | call append(i, range(i, i + 99)) | let i += 100 | endwhile ggdd :w! Xtest. :r !@test77a.com Xtest. :s/\s/ /g :set fileformat& :.w! test.out :qa! ENDTEST