systemctl-edit: fix abort in find_paths_to_edit()
After 85c5d313, if you, for example, create a drop-in for -.slice without a corresponding -.slice file, you will get the following: # put some valid stuff in /etc/systemd/system/-.slice.d/override.conf [root@image ~]# systemctl daemon-reload [root@image ~]# systemctl edit -- -.slice Assertion 'path' failed at src/systemctl/systemctl-edit.c:425, function find_paths_to_edit(). Aborting. Aborted The aforementioned commit sets the ret_dropin_paths argument for unit_find_paths(). Thus, unit_find_paths() returns 1 in the example above because it finds a relevant drop-in. However find_paths_to_edit() was written to expect 1 only if the unit file itself exists (it does not in this example). To make this behave more like the version of `systemctl edit` prior to this commit, add an additional check so the code enters the "unit file not found" code branch. (cherry picked from commit 98199724)
Loading
Please register or sign in to comment