diff --git a/man/systemd.service.xml b/man/systemd.service.xml
index 4368ca8a19..7e96989583 100644
--- a/man/systemd.service.xml
+++ b/man/systemd.service.xml
@@ -922,7 +922,10 @@
the arguments. Double quotes ("...") and single quotes ('...') may
be used, in which case everything until the next matching quote
becomes part of the same argument. C-style escapes are also
- supported, see table below. Quotes themselves are removed after
+ supported. The table below contains the list of allowed escape
+ patterns. Only patterns which match the syntax in the table are
+ allowed; others will result in an error, and must be escaped by
+ doubling the backslash. Quotes themselves are removed after
parsing and escape sequences substituted. In addition, a trailing
backslash (\) may be used to merge lines.
@@ -939,7 +942,7 @@
&, and other elements of shell
syntax are not supported.
- The command to execute must an absolute path name. It may
+ The command to execute must be an absolute path name. It may
contain spaces, but control characters are not allowed.
The command line accepts % specifiers as
diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c
index ba73cc410e..299172123e 100644
--- a/src/core/load-fragment.c
+++ b/src/core/load-fragment.c
@@ -1986,7 +1986,7 @@ int config_parse_environ(const char *unit,
return log_oom();
FOREACH_WORD_QUOTED(word, l, k, state) {
- _cleanup_free_ char *n;
+ _cleanup_free_ char *n = NULL;
char **x;
r = cunescape_length(word, l, 0, &n);