forked from aniani/vim
patch 7.4.1687
Problem: The channel close_cb option does not work. Solution: Use jo_close_partial instead of jo_err_partial. (Damien)
This commit is contained in:
@@ -1103,7 +1103,7 @@ channel_set_options(channel_T *channel, jobopt_T *opt)
|
|||||||
*cbp = vim_strsave(opt->jo_close_cb);
|
*cbp = vim_strsave(opt->jo_close_cb);
|
||||||
else
|
else
|
||||||
*cbp = NULL;
|
*cbp = NULL;
|
||||||
*pp = opt->jo_err_partial;
|
*pp = opt->jo_close_partial;
|
||||||
if (*pp != NULL)
|
if (*pp != NULL)
|
||||||
++(*pp)->pt_refcount;
|
++(*pp)->pt_refcount;
|
||||||
}
|
}
|
||||||
|
@@ -1203,6 +1203,29 @@ func Test_close_callback()
|
|||||||
call s:run_server('s:test_close_callback')
|
call s:run_server('s:test_close_callback')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
function s:test_close_partial(port)
|
||||||
|
let handle = ch_open('localhost:' . a:port, s:chopt)
|
||||||
|
if ch_status(handle) == "fail"
|
||||||
|
call assert_false(1, "Can't open channel")
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
let s:d = {}
|
||||||
|
func s:d.closeCb(ch) dict
|
||||||
|
let self.close_ret = 'closed'
|
||||||
|
endfunc
|
||||||
|
call ch_setoptions(handle, {'close_cb': s:d.closeCb})
|
||||||
|
|
||||||
|
call assert_equal('', ch_evalexpr(handle, 'close me'))
|
||||||
|
call s:waitFor('"closed" == s:d.close_ret')
|
||||||
|
call assert_equal('closed', s:d.close_ret)
|
||||||
|
unlet s:d
|
||||||
|
endfunc
|
||||||
|
|
||||||
|
func Test_close_partial()
|
||||||
|
call ch_log('Test_close_partial()')
|
||||||
|
call s:run_server('s:test_close_partial')
|
||||||
|
endfunc
|
||||||
|
|
||||||
func Test_job_start_invalid()
|
func Test_job_start_invalid()
|
||||||
call assert_fails('call job_start($x)', 'E474:')
|
call assert_fails('call job_start($x)', 'E474:')
|
||||||
call assert_fails('call job_start("")', 'E474:')
|
call assert_fails('call job_start("")', 'E474:')
|
||||||
|
@@ -748,6 +748,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1687,
|
||||||
/**/
|
/**/
|
||||||
1686,
|
1686,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user