diff options
author | Lennart Poettering <lennart@poettering.net> | 2013-12-10 01:06:29 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2013-12-10 01:06:29 +0100 |
commit | 5763192abfdfafa2ca7c14c7d48393f67f28eff7 (patch) | |
tree | f253cc64510c1025f0663a09aa45c0ca87c390b2 /src/libsystemd-bus/bus-message.c | |
parent | 0039a203b1fc343bb280d512396886a4aefa4a01 (diff) |
bus: fix signature handling when exiting container
Diffstat (limited to 'src/libsystemd-bus/bus-message.c')
-rw-r--r-- | src/libsystemd-bus/bus-message.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libsystemd-bus/bus-message.c b/src/libsystemd-bus/bus-message.c index 007fab4e43..35a4678600 100644 --- a/src/libsystemd-bus/bus-message.c +++ b/src/libsystemd-bus/bus-message.c @@ -3911,6 +3911,7 @@ _public_ int sd_bus_message_enter_container(sd_bus_message *m, _public_ int sd_bus_message_exit_container(sd_bus_message *m) { struct bus_container *c; + unsigned saved; int r; assert_return(m, -EINVAL); @@ -3942,7 +3943,10 @@ _public_ int sd_bus_message_exit_container(sd_bus_message *m) { c = message_get_container(m); + saved = c->index; + c->index = c->saved_index; r = container_next_item(m, c, &m->rindex); + c->index = saved; if (r < 0) return r; |