patch 8.0.1666: % argument in ch_log() causes trouble

Problem:    % argument in ch_log() causes trouble.
Solution:   Use string as third argument in internal ch_log(). (Dominique
            Pelle, closes #2784)
diff --git a/src/evalfunc.c b/src/evalfunc.c
index dc2c14c..1ffbb21 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -1993,7 +1993,7 @@
     if (argvars[1].v_type != VAR_UNKNOWN)
 	channel = get_channel_arg(&argvars[1], FALSE, FALSE, 0);
 
-    ch_log(channel, (char *)msg);
+    ch_log(channel, "%s", msg);
 }
 
 /*
@@ -12927,7 +12927,7 @@
 }
 
 /*
- * Unref/free "callback" and "partial" retured by get_callback().
+ * Unref/free "callback" and "partial" returned by get_callback().
  */
     void
 free_callback(char_u *callback, partial_T *partial)