chiark / gitweb /
bus: keep kernel bus fd around during entire life-time of bus
[elogind.git] / src / libsystemd-bus / bus-message.c
index c72b52d5466b087a87587ba3a4a259a81073c620..e531dec5cd01e809e3185111ccf08c697aa4b011 100644 (file)
@@ -128,14 +128,14 @@ static void message_free(sd_bus_message *m) {
         if (m->release_kdbus)
                 ioctl(m->bus->input_fd, KDBUS_CMD_MSG_RELEASE, m->kdbus);
 
+        if (m->bus)
+                sd_bus_unref(m->bus);
+
         if (m->free_fds) {
                 close_many(m->fds, m->n_fds);
                 free(m->fds);
         }
 
-        if (m->bus)
-                sd_bus_unref(m->bus);
-
         if (m->iovec != m->iovec_fixed)
                 free(m->iovec);