summaryrefslogtreecommitdiffstats
path: root/src/channel.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-09-13 22:18:01 +0200
committerBram Moolenaar <Bram@vim.org>2017-09-13 22:18:01 +0200
commit71eeb74a608ddae2b52fb43766616672d0cdda18 (patch)
tree1d2942c8b45fd77feb46fe89412d5bf7c7a8307b /src/channel.c
parent072412ed45aa20a67aaa7e387d7f6bf59c7d3fbe (diff)
patch 8.0.1101: channel write fails if writing to log failsv8.0.1101
Problem: Channel write fails if writing to log fails. Solution: Ignore return value of fwrite(). (Ozaki Kiichi, closes #2081)
Diffstat (limited to 'src/channel.c')
-rw-r--r--src/channel.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/channel.c b/src/channel.c
index fa1898db9c..49bab16d11 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -138,7 +138,7 @@ ch_log_active(void)
}
static void
-ch_log_lead(char *what, channel_T *ch)
+ch_log_lead(const char *what, channel_T *ch)
{
if (log_fd != NULL)
{
@@ -1813,12 +1813,11 @@ channel_save(channel_T *channel, ch_part_T part, char_u *buf, int len,
head->rq_prev = node;
}
- if (log_fd != NULL && lead != NULL)
+ if (ch_log_active() && lead != NULL)
{
ch_log_lead(lead, channel);
fprintf(log_fd, "'");
- if (fwrite(buf, len, 1, log_fd) != 1)
- return FAIL;
+ ignored = (int)fwrite(buf, len, 1, log_fd);
fprintf(log_fd, "'\n");
}
return OK;
@@ -3385,7 +3384,7 @@ channel_read_block(channel_T *channel, ch_part_T part, int timeout)
channel_consume(channel, part, (int)(nl - buf) + 1);
}
}
- if (log_fd != NULL)
+ if (ch_log_active())
ch_log(channel, "Returning %d bytes", (int)STRLEN(msg));
return msg;
}
@@ -3670,7 +3669,7 @@ channel_send(
return FAIL;
}
- if (log_fd != NULL)
+ if (ch_log_active())
{
ch_log_lead("SEND ", channel);
fprintf(log_fd, "'");