view src/testdir/test77.in @ 10815:f883a1224396 v8.0.0297

patch 8.0.0297: double free on exit when using a closure commit https://github.com/vim/vim/commit/03ff9bcbc968f7d306e4a4e334e226fdde62ca82 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Feb 2 22:59:27 2017 +0100 patch 8.0.0297: double free on exit when using a closure Problem: Double free on exit when using a closure. (James McCoy) Solution: Split free_al_functions in two parts. (closes https://github.com/vim/vim/issues/1428)
author Christian Brabandt <cb@256bit.org>
date Thu, 02 Feb 2017 23:00:04 +0100
parents 5cd32322154c
children ae45d497868f
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.

STARTTEST
:so small.vim
:if !executable("cksum")
: 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 !cksum Xtest
:s/\s/ /g
:set fileformat&
:.w! test.out
:qa!
ENDTEST