From: John Ferlan Date: Wed, 30 Jan 2013 12:21:28 +0000 (-0500) Subject: network: Remove conditional settings to resolve resource leak X-Git-Tag: v1.0.3-rc1~206 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3fa23653eef29ba23a8925b9c741daad68e0c23e;p=thirdparty%2Flibvirt.git network: Remove conditional settings to resolve resource leak The conditional setting of cmdout in networkBuildDhcpDaemonCommandLine() caused Coverity to complain that 'cmd' could be leaked if !cmdout. Since the function is local and only called with cmdout being passed those checks have been removed. --- diff --git a/src/network/bridge_driver.c b/src/network/bridge_driver.c index dadcc6c2ac..c834f83626 100644 --- a/src/network/bridge_driver.c +++ b/src/network/bridge_driver.c @@ -994,8 +994,9 @@ cleanup: } /* build the dnsmasq command line */ -static int -networkBuildDhcpDaemonCommandLine(virNetworkObjPtr network, virCommandPtr *cmdout, +static int ATTRIBUTE_NONNULL(2) +networkBuildDhcpDaemonCommandLine(virNetworkObjPtr network, + virCommandPtr *cmdout, char *pidfile, dnsmasqContext *dctx, dnsmasqCapsPtr caps) { @@ -1027,13 +1028,9 @@ networkBuildDhcpDaemonCommandLine(virNetworkObjPtr network, virCommandPtr *cmdou cmd = virCommandNew(dnsmasqCapsGetBinaryPath(caps)); virCommandAddArgFormat(cmd, "--conf-file=%s", configfile); - - if (cmdout) - *cmdout = cmd; + *cmdout = cmd; ret = 0; cleanup: - if (ret < 0) - virCommandFree(cmd); return ret; }