---
 src/core/load-fragment.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/src/core/load-fragment.c b/src/core/load-fragment.c
index 90bf563..6108d12 100644
--- a/src/core/load-fragment.c
+++ b/src/core/load-fragment.c
@@ -1203,21 +1203,15 @@ int config_parse_exec_mount_flags(const char *unit,
         assert(data);
 
         FOREACH_WORD_SEPARATOR(word, l, rvalue, ", ", state) {
-                _cleanup_free_ char *t;
-
-                t = strndup(word, l);
-                if (!t)
-                        return log_oom();
-
-                if (streq(t, "shared"))
+                if (strneq(word, "shared", l))
                         flags = MS_SHARED;
-                else if (streq(t, "slave"))
+                else if (strneq(word, "slave", l))
                         flags = MS_SLAVE;
-                else if (streq(word, "private"))
+                else if (strneq(word, "private", l))
                         flags = MS_PRIVATE;
                 else {
                         log_syntax(unit, LOG_ERR, filename, line, EINVAL,
-                                   "Failed to parse mount flag %s, ignoring: 
%s", t, rvalue);
+                                   "Failed to parse mount flag %.*s, ignoring: 
%s", l, word, rvalue);
                         return 0;
                 }
         }
-- 
2.3.0

_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to