ovs: fix leak of json objects

Fixes: 830a5a14cb
This commit is contained in:
Beniamino Galvani
2019-02-10 13:32:28 +01:00
parent 8d9685ef98
commit 139b9974fa

View File

@@ -348,14 +348,14 @@ _insert_interface (json_t *params, NMConnection *interface)
if (s_ovs_iface) if (s_ovs_iface)
type = nm_setting_ovs_interface_get_interface_type (s_ovs_iface); type = nm_setting_ovs_interface_get_interface_type (s_ovs_iface);
json_array_append (options, json_string ("map")); json_array_append_new (options, json_string ("map"));
s_ovs_patch = nm_connection_get_setting_ovs_patch (interface); s_ovs_patch = nm_connection_get_setting_ovs_patch (interface);
if (s_ovs_patch) { if (s_ovs_patch) {
json_array_append (options, json_pack ("[[s, s]]", json_array_append_new (options, json_pack ("[[s, s]]",
"peer", "peer",
nm_setting_ovs_patch_get_peer (s_ovs_patch))); nm_setting_ovs_patch_get_peer (s_ovs_patch)));
} else { } else {
json_array_append (options, json_array ()); json_array_append_new (options, json_array ());
} }
json_array_append_new (params, json_array_append_new (params,
@@ -606,7 +606,8 @@ _delete_interface (NMOvsdb *self, json_t *params, const char *ifname)
OpenvswitchBridge *ovs_bridge; OpenvswitchBridge *ovs_bridge;
OpenvswitchPort *ovs_port; OpenvswitchPort *ovs_port;
OpenvswitchInterface *ovs_interface; OpenvswitchInterface *ovs_interface;
json_t *bridges, *new_bridges; nm_auto_decref_json json_t *bridges = NULL;
nm_auto_decref_json json_t *new_bridges = NULL;
gboolean bridges_changed; gboolean bridges_changed;
gboolean ports_changed; gboolean ports_changed;
gboolean interfaces_changed; gboolean interfaces_changed;