summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBeniamino Galvani <bgalvani@redhat.com>2019-02-10 13:41:37 +0100
committerBeniamino Galvani <bgalvani@redhat.com>2019-02-17 19:39:08 +0100
commitb92f2c932310e0ab2c94af9824f2e683af773204 (patch)
treee912eccd5c004a9f152be5848c2c078c913ce639
parent139b9974fa34ee01b9ff57b45e64faaf645db5e8 (diff)
downloadNetworkManager-b92f2c932310e0ab2c94af9824f2e683af773204.tar.gz
ovs: don't leak a GCancellable on connection failure
Every time we clear priv->client we should also clear the cancellable or it will be leaked. Fixes: 830a5a14cb29ca00b73a9623c1ea7c5cd92f4d00
-rw-r--r--src/devices/ovs/nm-ovsdb.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/devices/ovs/nm-ovsdb.c b/src/devices/ovs/nm-ovsdb.c
index d3f573ede1..6fef75b612 100644
--- a/src/devices/ovs/nm-ovsdb.c
+++ b/src/devices/ovs/nm-ovsdb.c
@@ -1308,6 +1308,7 @@ ovsdb_disconnect (NMOvsdb *self, gboolean is_disposing)
g_clear_object (&priv->client);
g_clear_object (&priv->conn);
g_clear_pointer (&priv->db_uuid, g_free);
+ nm_clear_g_cancellable (&priv->cancellable);
}
static void
@@ -1540,9 +1541,6 @@ dispose (GObject *object)
g_clear_pointer (&priv->ports, g_hash_table_destroy);
g_clear_pointer (&priv->interfaces, g_hash_table_destroy);
- g_cancellable_cancel (priv->cancellable);
- g_clear_object (&priv->cancellable);
-
G_OBJECT_CLASS (nm_ovsdb_parent_class)->dispose (object);
}