view src/testdir/test_terminal_fail.vim @ 19864:8288884fdfe1 v8.2.0488

patch 8.2.0488: Vim9: compiling can break when using a lambda inside :def Commit: https://github.com/vim/vim/commit/05afceeddc4afbbca60e4e6a729a50d33d4b19f7 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Mar 31 23:32:31 2020 +0200 patch 8.2.0488: Vim9: compiling can break when using a lambda inside :def Problem: Vim9: Compiling can break when using a lambda inside :def. Solution: Do not keep a pointer to the dfunc_T for longer time.
author Bram Moolenaar <Bram@vim.org>
date Tue, 31 Mar 2020 23:45:04 +0200
parents 8e9e9124c7a2
children c087099e9163
line wrap: on
line source

" This test is in a separate file, because it usually causes reports for memory
" leaks under valgrind.  That is because when fork/exec fails memory is not
" freed.  Since the process exists right away it's not a real leak.

source check.vim
CheckFeature terminal

source shared.vim

func Test_terminal_redir_fails()
  if has('unix')
    let buf = term_start('xyzabc', {'err_io': 'file', 'err_name': 'Xfile'})
    call term_wait(buf)
    call WaitFor('len(readfile("Xfile")) > 0')
    call assert_match('executing job failed', readfile('Xfile')[0])
    call WaitFor('!&modified')
    call delete('Xfile')
    bwipe
  endif
endfunc