diff options
author | Lennart Poettering <lennart@poettering.net> | 2016-04-17 14:29:41 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2016-04-17 14:29:41 +0200 |
commit | 746af6e0b5aaed999be912e48505d3edc2cf874a (patch) | |
tree | e683aa6525e4eee3d7621c2c4a85f6042184c8b0 /src/core/dbus-manager.c | |
parent | b50a16af8e3c353703d55f117077fcf60b8081e8 (diff) | |
parent | 24737c291738313fd67924172988a8986f60e958 (diff) |
Merge pull request #3049 from keszybz/preset-fixes
Fixes for preset-all handling and a few related issues
Diffstat (limited to 'src/core/dbus-manager.c')
-rw-r--r-- | src/core/dbus-manager.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/core/dbus-manager.c b/src/core/dbus-manager.c index 2392ed6c16..9a913a6c91 100644 --- a/src/core/dbus-manager.c +++ b/src/core/dbus-manager.c @@ -1565,11 +1565,13 @@ static int reply_unit_file_changes_and_free( unsigned i; int r; - if (n_changes > 0) { - r = bus_foreach_bus(m, NULL, send_unit_files_changed, NULL); - if (r < 0) - log_debug_errno(r, "Failed to send UnitFilesChanged signal: %m"); - } + for (i = 0; i < n_changes; i++) + if (unit_file_change_is_modification(changes[i].type)) { + r = bus_foreach_bus(m, NULL, send_unit_files_changed, NULL); + if (r < 0) + log_debug_errno(r, "Failed to send UnitFilesChanged signal: %m"); + break; + } r = sd_bus_message_new_method_return(message, &reply); if (r < 0) @@ -1610,7 +1612,7 @@ fail: static int install_error(sd_bus_error *error, int c) { assert(c < 0); - if (c == -ESHUTDOWN) + if (c == -ERFKILL) return sd_bus_error_setf(error, BUS_ERROR_UNIT_MASKED, "Unit file is masked."); if (c == -EADDRNOTAVAIL) return sd_bus_error_setf(error, BUS_ERROR_UNIT_GENERATED, "Unit file is transient or generated."); |