Skywind wrote:

> ------------------ BUG 1 ---------------------
> job_stop will not actually stop the process in windows unless I unlet the job 
> variable
> 
> step to reproduct (windows gvim 7.4.1832):
> 1. start a background python job (output a single line and sleep 1 second, 
> repeat 30 times)
> 2. redirect stdout/stderr into quickfix window by 'callback'
> 3. call job_stop with 'term' or 'kill' and ** DO NOT unlet job object **
> 4. check job_status and it changed from 'run' to 'dead'
> 5. ERROR: but the job is still running, still output text to quickfix window
> 6. when it actually exit by it self (after repeat itself 30 times) 'close_cb' 
> and 'exit_cb' were invoked
> 
> and if I unlet job object after job_stop, everything seems okay, the job can 
> actually be stopped
> but job object can not be unleted after job_stop, because sometimes child 
> process will stop signal from 
> being terminated (ignore TERM etc) in this circumstance, if I immediately 
> unlet job object after
> a no-effect job_stop calling my script will fail into an error environment.
> 
> This is only in windows, in linux everything is fine, I can clean the job 
> object in exit_cb/close_cb as my wish.
> and job_stop doesn't require a unlet in linux too.

I'll put this in the todo list.  It would be useful to have a channel
log for this example.

> ------------------ BUG 2 ---------------------
> 'close_cb' and 'exit_cb' will not be invoked if I stop the job by 
> job_stop(s:job_obj, 'int') in windows.
> 
> if 'term', 'kill' were used to stop the child process (s:job_obj must be 
> unlet after it due to bug 1), 
> 'close_cb' and 'exit_cb' will be invoked correctly.
> 
> But 'close_cb' and 'exit_cb' can be lost if 'term', 'kill' has been replaced 
> to 'int'.

This is because on Windows we don't know the effect of sending 'int'.
It basically sends a CTRL-C key.  The process may do nothing with it.

> These two bugs are ONLY in windows (gvim 7.4.1832), 


-- 
ARTHUR: What are you going to do. bleed on me?
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui