chiark / gitweb /
machinectl: close bus to container early
authorLennart Poettering <lennart@poettering.net>
Thu, 7 Nov 2013 23:49:44 +0000 (00:49 +0100)
committerLennart Poettering <lennart@poettering.net>
Fri, 8 Nov 2013 13:07:26 +0000 (14:07 +0100)
src/machine/machinectl.c

index 4b8351c..a1890aa 100644 (file)
@@ -226,7 +226,7 @@ static void print_machine_status_info(sd_bus *bus, MachineStatusInfo *i) {
 }
 
 static int show_info(const char *verb, sd_bus *bus, const char *path, bool *new_line) {
-        MachineStatusInfo info = {};
+
         static const struct bus_properties_map map[]  = {
                 { "Name",          "s",  NULL,          offsetof(MachineStatusInfo, name) },
                 { "Class",         "s",  NULL,          offsetof(MachineStatusInfo, class) },
@@ -238,6 +238,8 @@ static int show_info(const char *verb, sd_bus *bus, const char *path, bool *new_
                 { "Id",            "ay", bus_map_id128, offsetof(MachineStatusInfo, id) },
                 {}
         };
+
+        MachineStatusInfo info = {};
         int r;
 
         assert(path);
@@ -603,6 +605,8 @@ static int login_machine(sd_bus *bus, char **args, unsigned n) {
                 return r;
         }
 
+        container_bus = sd_bus_unref(container_bus);
+
         assert_se(sigemptyset(&mask) == 0);
         sigset_add_many(&mask, SIGWINCH, SIGTERM, SIGINT, -1);
         assert_se(sigprocmask(SIG_BLOCK, &mask, NULL) == 0);