chiark / gitweb /
load-fragment: properly unescape \;
authortomsod-m ya ru <tomsod-m@ya.ru>
Thu, 18 Dec 2014 04:01:06 +0000 (23:01 -0500)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Thu, 18 Dec 2014 04:01:38 +0000 (23:01 -0500)
https://bugs.freedesktop.org/show_bug.cgi?id=87393

src/core/load-fragment.c

index 8e5be8731f326ca595a3e3759241610f7093adf0..358d36beb69deace4f8a220c71c9030ed7857be0 100644 (file)
@@ -601,8 +601,10 @@ int config_parse_exec(const char *unit,
                 FOREACH_WORD_QUOTED(word, l, rvalue, state) {
                         if (strneq(word, ";", MAX(l, 1U)))
                                 break;
-                        else if (strneq(word, "\\;", MAX(l, 1U)))
+                        else if (strneq(word, "\\;", MAX(l, 1U))) {
                                 word ++;
+                                l --;
+                        }
 
                         if (honour_argv0 && word == rvalue) {
                                 assert(!path);