Mercurial > vim
view src/testdir/bench_re_freeze.vim @ 17444:f4ce361bb1e5 v8.1.1720
patch 8.1.1720: crash with very long %[] pattern
commit https://github.com/vim/vim/commit/2a5b52758bb327b89d22660cc28c157ec29782e5
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jul 20 18:56:06 2019 +0200
patch 8.1.1720: crash with very long %[] pattern
Problem: Crash with very long %[] pattern. (Reza Mirzazade farkhani)
Solution: Check for reg_toolong. (closes https://github.com/vim/vim/issues/4703)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 20 Jul 2019 19:00:06 +0200 |
parents | adfbffe1e642 |
children |
line wrap: on
line source
"Test for benchmarking the RE engine so small.vim if !has("reltime") | finish | endif func! Measure(file, pattern, arg) for re in range(3) let sstart=reltime() let cmd=printf("../vim -u NONE -N --cmd ':set re=%d'". \ " -c 'call search(\"%s\", \"\", \"\", 10000)' -c ':q!' %s", re, escape(a:pattern, '\\'), empty(a:arg) ? '' : a:arg) call system(cmd. ' '. a:file) $put =printf('file: %s, re: %d, time: %s', a:file, re, reltimestr(reltime(sstart))) endfor endfunc