chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
613b411
)
bus: properly handle if we get disconnected during HELLO phase
author
Lennart Poettering
<lennart@poettering.net>
Wed, 27 Nov 2013 19:24:10 +0000
(20:24 +0100)
committer
Lennart Poettering
<lennart@poettering.net>
Wed, 27 Nov 2013 19:28:48 +0000
(20:28 +0100)
src/libsystemd-bus/sd-bus.c
patch
|
blob
|
history
diff --git
a/src/libsystemd-bus/sd-bus.c
b/src/libsystemd-bus/sd-bus.c
index 1207d5ad2e1ea8394a2a9a7b7e4d753231bf5c0b..f13e346dcfb105f0830e60e957b94e838b467bde 100644
(file)
--- a/
src/libsystemd-bus/sd-bus.c
+++ b/
src/libsystemd-bus/sd-bus.c
@@
-380,7
+380,7
@@
static int hello_callback(sd_bus *bus, sd_bus_message *reply, void *userdata, sd
int r;
assert(bus);
- assert(bus->state == BUS_HELLO);
+ assert(bus->state == BUS_HELLO
|| bus->state == BUS_CLOSING
);
assert(reply);
r = sd_bus_message_get_errno(reply);
@@
-400,7
+400,8
@@
static int hello_callback(sd_bus *bus, sd_bus_message *reply, void *userdata, sd
if (!bus->unique_name)
return -ENOMEM;
- bus->state = BUS_RUNNING;
+ if (bus->state == BUS_HELLO)
+ bus->state = BUS_RUNNING;
return 1;
}