chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
dbus: make sure to flush bus connection before disconnecting, so that no messages...
[elogind.git]
/
src
/
systemctl.c
diff --git
a/src/systemctl.c
b/src/systemctl.c
index 901804a766d1197f3d98543f3606818cc16d2827..ecf3e013f2add664fcb4848d6a8904a8ee28a785 100644
(file)
--- a/
src/systemctl.c
+++ b/
src/systemctl.c
@@
-2928,7
+2928,7
@@
static int daemon_reload(DBusConnection *bus, char **args, unsigned n) {
if (arg_action != ACTION_SYSTEMCTL && error_is_no_service(&error)) {
/* There's always a fallback possible for
* legacy actions. */
if (arg_action != ACTION_SYSTEMCTL && error_is_no_service(&error)) {
/* There's always a fallback possible for
* legacy actions. */
- r =
0
;
+ r =
-EADDRNOTAVAIL
;
goto finish;
}
goto finish;
}
@@
-2937,7
+2937,7
@@
static int daemon_reload(DBusConnection *bus, char **args, unsigned n) {
goto finish;
}
goto finish;
}
- r =
1
;
+ r =
0
;
finish:
if (m)
finish:
if (m)
@@
-4605,7
+4605,7
@@
static int talk_upstart(void) {
if (!(reply = dbus_connection_send_with_reply_and_block(bus, m, -1, &error))) {
if (error_is_no_service(&error)) {
if (!(reply = dbus_connection_send_with_reply_and_block(bus, m, -1, &error))) {
if (error_is_no_service(&error)) {
- r =
0
;
+ r =
-EADDRNOTAVAIL
;
goto finish;
}
goto finish;
}
@@
-4614,7
+4614,7
@@
static int talk_upstart(void) {
goto finish;
}
goto finish;
}
- r =
1
;
+ r =
0
;
finish:
if (m)
finish:
if (m)
@@
-4624,6
+4624,7
@@
finish:
dbus_message_unref(reply);
if (bus) {
dbus_message_unref(reply);
if (bus) {
+ dbus_connection_flush(bus);
dbus_connection_close(bus);
dbus_connection_unref(bus);
}
dbus_connection_close(bus);
dbus_connection_unref(bus);
}
@@
-5039,6
+5040,7
@@
int main(int argc, char*argv[]) {
finish:
if (bus) {
finish:
if (bus) {
+ dbus_connection_flush(bus);
dbus_connection_close(bus);
dbus_connection_unref(bus);
}
dbus_connection_close(bus);
dbus_connection_unref(bus);
}