diff options
author | Martin Pitt <martin.pitt@ubuntu.com> | 2016-04-11 21:03:29 +0200 |
---|---|---|
committer | Martin Pitt <martin.pitt@ubuntu.com> | 2016-04-11 21:03:29 +0200 |
commit | 3de1521427dee61000c1c124a521182b301a50de (patch) | |
tree | e89679e3f2c8968fa8e7ab4ba35b490eab635a10 | |
parent | 2270dfb852eacd984fb49ce6bc83a38fe652a063 (diff) |
Install: correctly report symlink creations
All callers of create_symlink(), such as install_info_symlink_wants(), expect
that to return > 0 if it actually did something, and then return that number.
unit_file_enable() uses that to determine if any action was done
(carries_install_info != 0) and if not, show a "The unit files have no
[Install] section" warning.
Return 1 instead of 0 in the two code paths of create_symlink() when the link
was created or replaced with a new value.
This fixes getting a bogus "No [Install] section" warning when enabling a unit
with full path, like "systemctl enable /some/path/myunit.service".
-rw-r--r-- | src/shared/install.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/shared/install.c b/src/shared/install.c index ef8f485cae..0f08137f19 100644 --- a/src/shared/install.c +++ b/src/shared/install.c @@ -294,7 +294,7 @@ static int create_symlink( if (symlink(old_path, new_path) >= 0) { unit_file_changes_add(changes, n_changes, UNIT_FILE_SYMLINK, new_path, old_path); - return 0; + return 1; } if (errno != EEXIST) @@ -317,7 +317,7 @@ static int create_symlink( unit_file_changes_add(changes, n_changes, UNIT_FILE_UNLINK, new_path, NULL); unit_file_changes_add(changes, n_changes, UNIT_FILE_SYMLINK, new_path, old_path); - return 0; + return 1; } static int mark_symlink_for_removal( |