summaryrefslogtreecommitdiff
path: root/ovn
diff options
context:
space:
mode:
authornickcooper-zhangtonghao <nickcooper-zhangtonghao@opencloud.tech>2016-10-03 08:19:09 -0700
committerBen Pfaff <blp@ovn.org>2016-10-03 12:42:13 -0700
commit88e5c2a4a1c4ab1c249b716f1f21986c520105ec (patch)
tree9eb60335210dbc65a38bb363df6c4ed931ff5575 /ovn
parent1539d07028d0acbc9910a16e537d8fb88e9067c4 (diff)
downloadopenvswitch-88e5c2a4a1c4ab1c249b716f1f21986c520105ec.tar.gz
ovn-nbctl: Fix memory leak in nbctl_lrp_add.
Signed-off-by: nickcooper-zhangtonghao <nickcooper-zhangtonghao@opencloud.tech> Signed-off-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'ovn')
-rw-r--r--ovn/utilities/ovn-nbctl.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/ovn/utilities/ovn-nbctl.c b/ovn/utilities/ovn-nbctl.c
index 21486659c..b23cccfda 100644
--- a/ovn/utilities/ovn-nbctl.c
+++ b/ovn/utilities/ovn-nbctl.c
@@ -1809,14 +1809,14 @@ nbctl_lrp_add(struct ctl_context *ctx)
struct sset orig_networks = SSET_INITIALIZER(&orig_networks);
sset_add_array(&orig_networks, lrp->networks, lrp->n_networks);
- if (!sset_equals(&orig_networks, &new_networks)) {
+ bool same_networks = sset_equals(&orig_networks, &new_networks);
+ sset_destroy(&orig_networks);
+ sset_destroy(&new_networks);
+ if (!same_networks) {
ctl_fatal("%s: port already exists with different network",
lrp_name);
}
- sset_destroy(&orig_networks);
- sset_destroy(&new_networks);
-
/* Special-case sanity-check of peer ports. */
const char *peer = NULL;
for (int i = 0; i < n_settings; i++) {