diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c index f966dda229..b8cd5e6417 100644 --- a/src/libsystemd/sd-bus/bus-message.c +++ b/src/libsystemd/sd-bus/bus-message.c @@ -3189,6 +3189,8 @@ static int container_next_item(sd_bus_message *m, struct bus_container *c, size_ int sz; sz = bus_gvariant_get_size(c->signature); + if (sz == 0) + return -EBADMSG; if (sz < 0) { int alignment;