summaryrefslogtreecommitdiff
path: root/src/proto
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-03-28 19:16:20 +0200
committerBram Moolenaar <Bram@vim.org>2016-03-28 19:16:20 +0200
commit8b877ac38e96424a08a8b8eb713ef4b3cf0064be (patch)
treec72ac7aa90e66ad1e6d6c82fb27ab7d74de3eea9 /src/proto
parentee1f7b3cb71684aaa9bf457e2caf9d02187e6b7c (diff)
downloadvim-git-8b877ac38e96424a08a8b8eb713ef4b3cf0064be.tar.gz
patch 7.4.1669v7.4.1669
Problem: When writing buffer lines to a pipe Vim may block. Solution: Avoid blocking, write more lines later.
Diffstat (limited to 'src/proto')
-rw-r--r--src/proto/channel.pro6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/proto/channel.pro b/src/proto/channel.pro
index e33490875..b796d82bf 100644
--- a/src/proto/channel.pro
+++ b/src/proto/channel.pro
@@ -13,7 +13,7 @@ void channel_set_pipes(channel_T *channel, sock_T in, sock_T out, sock_T err);
void channel_set_job(channel_T *channel, job_T *job, jobopt_T *options);
void channel_set_options(channel_T *channel, jobopt_T *opt);
void channel_set_req_callback(channel_T *channel, int part, char_u *callback, partial_T *partial, int id);
-void channel_write_in(channel_T *channel);
+void channel_write_any_lines(void);
void channel_write_new_lines(buf_T *buf);
char_u *channel_get(channel_T *channel, int part);
int channel_collapse(channel_T *channel, int part);
@@ -37,8 +37,8 @@ void ch_expr_common(typval_T *argvars, typval_T *rettv, int eval);
void ch_raw_common(typval_T *argvars, typval_T *rettv, int eval);
int channel_poll_setup(int nfd_in, void *fds_in);
int channel_poll_check(int ret_in, void *fds_in);
-int channel_select_setup(int maxfd_in, void *rfds_in);
-int channel_select_check(int ret_in, void *rfds_in);
+int channel_select_setup(int maxfd_in, void *rfds_in, void *wfds_in);
+int channel_select_check(int ret_in, void *rfds_in, void *wfds_in);
int channel_parse_messages(void);
int set_ref_in_channel(int copyID);
int channel_part_send(channel_T *channel);