diff --git a/src/shell-util.c b/src/shell-util.c index 742aa829a..a965c7148 100644 --- a/src/shell-util.c +++ b/src/shell-util.c @@ -619,6 +619,7 @@ shell_util_systemd_call (const char *command, gpointer user_data) { g_autoptr (GTask) task = g_task_new (NULL, cancellable, callback, user_data); + g_autoptr (GVariant) params_owned = g_variant_ref_sink (g_steal_pointer (¶ms)); #ifdef HAVE_SYSTEMD g_autoptr (GDBusConnection) connection = NULL; @@ -695,7 +696,7 @@ shell_util_systemd_call (const char *command, "/org/freedesktop/systemd1", "org.freedesktop.systemd1.Manager", command, - params, + params_owned, G_VARIANT_TYPE ("(o)"), G_DBUS_CALL_FLAGS_NONE, -1, cancellable,