Mercurial > vim
view src/testdir/test_close_count.in @ 6745:7f9a158cf1d9 v7.4.695
patch 7.4.695
Problem: Out-of-bounds read, dectected by Coverity.
Solution: Remember the value of cmap for the first matching encoding. Reset
cmap to that value if first matching encoding is going to be used.
(Eliseo Mart?nez)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Mon, 13 Apr 2015 14:45:27 +0200 |
parents | 22f95a018b13 |
children | ae45d497868f |
line wrap: on
line source
Tests for :[count]close! and :[count]hide vim: set ft=vim : STARTTEST :so small.vim :let tests = [] :for i in range(5) :new :endfor :4wincmd w :close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :$close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1wincmd w :2close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1wincmd w :new :new :2wincmd w :-1close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :2wincmd w :+1close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :e! test.out :call append(0, map(copy(tests), 'join(v:val, " ")')) :w :only! :b1 ENDTEST STARTTEST :let tests = [] :for i in range(5) :new :endfor :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :4wincmd w :.hide :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1hide :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :$hide :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1wincmd w :2hide :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1wincmd w :new :new :3wincmd w :-hide :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :2wincmd w :+hide :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :e! test.out :call append(line('$'), map(copy(tests), 'join(v:val, " ")')) Go :w :only! :b1 ENDTEST STARTTEST :let tests = [] :set hidden :for i in range(5) :new :endfor :1wincmd w :$ hide :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :$-1 close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1wincmd w :.+close! :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :e! test.out :call append(line('$'), map(copy(tests), 'join(v:val, " ")')) Go :w :only! :b1 ENDTEST STARTTEST :let tests = [] :set hidden :for i in range(5) :new :endfor :4wincmd w c :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) 1c :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) 9c :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :1wincmd w 2c :let buffers = [] :windo call add(buffers, bufnr('%')) :call add(tests, buffers) :only! :e! test.out :call append(line('$'), map(copy(tests), 'join(v:val, " ")')) :w :qa! ENDTEST