diff options
| -rwxr-xr-x | meta/recipes-core/systemd/systemd-systemctl/systemctl | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/meta/recipes-core/systemd/systemd-systemctl/systemctl b/meta/recipes-core/systemd/systemd-systemctl/systemctl index 8d7b3ba32d..8837f54e16 100755 --- a/meta/recipes-core/systemd/systemd-systemctl/systemctl +++ b/meta/recipes-core/systemd/systemd-systemctl/systemctl | |||
| @@ -28,6 +28,10 @@ class SystemdFile(): | |||
| 28 | def __init__(self, root, path): | 28 | def __init__(self, root, path): |
| 29 | self.sections = dict() | 29 | self.sections = dict() |
| 30 | self._parse(root, path) | 30 | self._parse(root, path) |
| 31 | dirname = os.path.basename(path.name) + ".d" | ||
| 32 | for location in locations: | ||
| 33 | for path2 in sorted((root / location / "system" / dirname).glob("*.conf")): | ||
| 34 | self._parse(root, path2) | ||
| 31 | 35 | ||
| 32 | def _parse(self, root, path): | 36 | def _parse(self, root, path): |
| 33 | """Parse a systemd syntax configuration file | 37 | """Parse a systemd syntax configuration file |
| @@ -56,8 +60,11 @@ class SystemdFile(): | |||
| 56 | line = line.rstrip("\n") | 60 | line = line.rstrip("\n") |
| 57 | m = section_re.match(line) | 61 | m = section_re.match(line) |
| 58 | if m: | 62 | if m: |
| 59 | section = dict() | 63 | if m.group('section') not in self.sections: |
| 60 | self.sections[m.group('section')] = section | 64 | section = dict() |
| 65 | self.sections[m.group('section')] = section | ||
| 66 | else: | ||
| 67 | section = self.sections[m.group('section')] | ||
| 61 | continue | 68 | continue |
| 62 | 69 | ||
| 63 | while line.endswith("\\"): | 70 | while line.endswith("\\"): |
