Mercurial > vim
comparison src/structs.h @ 14675:71c17b688bc6 v8.1.0350
patch 8.1.0350: Vim may block on ch_sendraw()
commit https://github.com/vim/vim/commit/0b1468884a2a1c5d3442cbb7119330e307f0aa3d
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Sep 6 16:27:24 2018 +0200
patch 8.1.0350: Vim may block on ch_sendraw()
Problem: Vim may block on ch_sendraw() when the job is sending data back to
Vim, which isn't read yet. (Nate Bosch)
Solution: Add the "noblock" option to job_start(). (closes #2548)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 06 Sep 2018 16:30:06 +0200 |
parents | 706b57cd1b00 |
children | 195e8b1fcbbf |
comparison
equal
deleted
inserted
replaced
14674:ab03bc29a3d3 | 14675:71c17b688bc6 |
---|---|
1649 partial_T *ch_partial; | 1649 partial_T *ch_partial; |
1650 char_u *ch_close_cb; /* call when channel is closed */ | 1650 char_u *ch_close_cb; /* call when channel is closed */ |
1651 partial_T *ch_close_partial; | 1651 partial_T *ch_close_partial; |
1652 int ch_drop_never; | 1652 int ch_drop_never; |
1653 int ch_keep_open; /* do not close on read error */ | 1653 int ch_keep_open; /* do not close on read error */ |
1654 int ch_nonblock; | |
1654 | 1655 |
1655 job_T *ch_job; /* Job that uses this channel; this does not | 1656 job_T *ch_job; /* Job that uses this channel; this does not |
1656 * count as a reference to avoid a circular | 1657 * count as a reference to avoid a circular |
1657 * reference, the job refers to the channel. */ | 1658 * reference, the job refers to the channel. */ |
1658 int ch_job_killed; /* TRUE when there was a job and it was killed | 1659 int ch_job_killed; /* TRUE when there was a job and it was killed |
1727 | 1728 |
1728 ch_mode_T jo_mode; | 1729 ch_mode_T jo_mode; |
1729 ch_mode_T jo_in_mode; | 1730 ch_mode_T jo_in_mode; |
1730 ch_mode_T jo_out_mode; | 1731 ch_mode_T jo_out_mode; |
1731 ch_mode_T jo_err_mode; | 1732 ch_mode_T jo_err_mode; |
1733 int jo_noblock; | |
1732 | 1734 |
1733 job_io_T jo_io[4]; /* PART_OUT, PART_ERR, PART_IN */ | 1735 job_io_T jo_io[4]; /* PART_OUT, PART_ERR, PART_IN */ |
1734 char_u jo_io_name_buf[4][NUMBUFLEN]; | 1736 char_u jo_io_name_buf[4][NUMBUFLEN]; |
1735 char_u *jo_io_name[4]; /* not allocated! */ | 1737 char_u *jo_io_name[4]; /* not allocated! */ |
1736 int jo_io_buf[4]; | 1738 int jo_io_buf[4]; |