diff --git a/src/channel.c b/src/channel.c
index fa1898d..49bab16 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -138,7 +138,7 @@
 }
 
     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 @@
 	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_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 @@
 	return FAIL;
     }
 
-    if (log_fd != NULL)
+    if (ch_log_active())
     {
 	ch_log_lead("SEND ", channel);
 	fprintf(log_fd, "'");
