diff options
| author | James McCoy <jamessan@jamessan.com> | 2017-04-05 22:39:40 -0400 |
|---|---|---|
| committer | James McCoy <jamessan@jamessan.com> | 2017-04-05 22:39:40 -0400 |
| commit | bb54d921aaf85f0393c1ba10585560056f7f4ec8 (patch) | |
| tree | 316ff7424337b3572b58340383eeabb3a0d36e80 /src/nvim/event | |
| parent | 4f69a8fb8854698adb2de8956ad0d86ff35a6f68 (diff) | |
| parent | 210b013ce75b5ea8a897071e32decc1e1f88189e (diff) | |
| download | rneovim-bb54d921aaf85f0393c1ba10585560056f7f4ec8.tar.gz rneovim-bb54d921aaf85f0393c1ba10585560056f7f4ec8.tar.bz2 rneovim-bb54d921aaf85f0393c1ba10585560056f7f4ec8.zip | |
Merge remote-tracking branch 'origin/master' into vim-7.4.2170
Diffstat (limited to 'src/nvim/event')
| -rw-r--r-- | src/nvim/event/process.h | 2 | ||||
| -rw-r--r-- | src/nvim/event/rstream.c | 10 |
2 files changed, 9 insertions, 3 deletions
diff --git a/src/nvim/event/process.h b/src/nvim/event/process.h index 5cbf7f9ce7..26d70a5e6d 100644 --- a/src/nvim/event/process.h +++ b/src/nvim/event/process.h @@ -21,7 +21,7 @@ struct process { int pid, status, refcount; // set to the hrtime of when process_stop was called for the process. uint64_t stopped_time; - char *cwd; + const char *cwd; char **argv; Stream *in, *out, *err; process_exit_cb cb; diff --git a/src/nvim/event/rstream.c b/src/nvim/event/rstream.c index 92efc9fa2e..2737dad305 100644 --- a/src/nvim/event/rstream.c +++ b/src/nvim/event/rstream.c @@ -89,7 +89,10 @@ static void on_rbuffer_nonfull(RBuffer *buf, void *data) static void alloc_cb(uv_handle_t *handle, size_t suggested, uv_buf_t *buf) { Stream *stream = handle->data; - buf->base = rbuffer_write_ptr(stream->buffer, &buf->len); + // `uv_buf_t.len` happens to have different size on Windows. + size_t write_count; + buf->base = rbuffer_write_ptr(stream->buffer, &write_count); + buf->len = write_count; } // Callback invoked by libuv after it copies the data into the buffer provided @@ -136,7 +139,10 @@ static void fread_idle_cb(uv_idle_t *handle) uv_fs_t req; Stream *stream = handle->data; - stream->uvbuf.base = rbuffer_write_ptr(stream->buffer, &stream->uvbuf.len); + // `uv_buf_t.len` happens to have different size on Windows. + size_t write_count; + stream->uvbuf.base = rbuffer_write_ptr(stream->buffer, &write_count); + stream->uvbuf.len = write_count; // the offset argument to uv_fs_read is int64_t, could someone really try // to read more than 9 quintillion (9e18) bytes? |