From: Ben Pfaff Date: Tue, 18 Dec 2012 21:17:00 +0000 (-0800) Subject: ofproto-dpif: Fix memory leak in type_run(). X-Git-Tag: sliver-openvswitch-1.9.90-3~10^2~83 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=5b5e6a4c7525576ffe44aa9b7e67b3fd49ea2501;p=sliver-openvswitch.git ofproto-dpif: Fix memory leak in type_run(). The dpif_port_destroy() call was in the dpif_port_query_by_name() error path, when there's nothing to destroy, rather than in the "success" path, where there is data to destroy. Signed-off-by: Ben Pfaff --- diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c index 95fd54ee3..b78d6cf55 100644 --- a/ofproto/ofproto-dpif.c +++ b/ofproto/ofproto-dpif.c @@ -850,12 +850,12 @@ type_run(const char *type) sset_add(&ofproto->port_poll_set, devname); ofproto->port_poll_errno = 0; } - dpif_port_destroy(&port); } else if (!ofproto) { /* The port was added, but we don't know with which * ofproto we should associate it. Delete it. */ dpif_port_del(backer->dpif, port.port_no); } + dpif_port_destroy(&port); free(devname); }