mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-01 17:35:17 +00:00
Given code like if (foo) free (foo); remove the useless "if (foo) " part.
Likewise, given if (foo != NULL) free (foo); remove the useless "if" test. * proxy/libvirt_proxy.c: Remove unnecessary "if" test before free. * python/generator.py: Likewise. * qemud/qemud.c: Likewise. * src/buf.c: Likewise. * src/conf.c: Likewise. * src/hash.c: Likewise. * src/iptables.c: Likewise. * src/libvirt.c: Likewise. * src/openvz_conf.c: Likewise. * src/qemu_conf.c: Likewise. * src/qemu_driver.c: Likewise. * src/remote_internal.c: Likewise. * src/test.c: Likewise. * src/virsh.c: Likewise. * src/virterror.c: Likewise. * src/xen_internal.c: Likewise. * src/xen_unified.c: Likewise. * src/xend_internal.c: Likewise. * src/xm_internal.c: Likewise. * src/xml.c: Likewise. * src/xmlrpc.c: Likewise. * src/xs_internal.c: Likewise. * tests/testutils.c: Likewise. * tests/xencapstest.c: Likewise. * tests/xmconfigtest.c: Likewise.
This commit is contained in:
parent
b17caa80d1
commit
acff2d11ac
31
ChangeLog
31
ChangeLog
@ -1,3 +1,34 @@
|
|||||||
|
Tue Jan 29 18:39:25 CET 2008 Jim Meyering <meyering@redhat.com>
|
||||||
|
|
||||||
|
Given code like if (foo) free (foo); remove the useless "if (foo) " part
|
||||||
|
Likewise, given if (foo != NULL) free (foo); remove the useless "if"
|
||||||
|
test.
|
||||||
|
* proxy/libvirt_proxy.c: Remove unnecessary "if" test before free.
|
||||||
|
* python/generator.py: Likewise.
|
||||||
|
* qemud/qemud.c: Likewise.
|
||||||
|
* src/buf.c: Likewise.
|
||||||
|
* src/conf.c: Likewise.
|
||||||
|
* src/hash.c: Likewise.
|
||||||
|
* src/iptables.c: Likewise.
|
||||||
|
* src/libvirt.c: Likewise.
|
||||||
|
* src/openvz_conf.c: Likewise.
|
||||||
|
* src/qemu_conf.c: Likewise.
|
||||||
|
* src/qemu_driver.c: Likewise.
|
||||||
|
* src/remote_internal.c: Likewise.
|
||||||
|
* src/test.c: Likewise.
|
||||||
|
* src/virsh.c: Likewise.
|
||||||
|
* src/virterror.c: Likewise.
|
||||||
|
* src/xen_internal.c: Likewise.
|
||||||
|
* src/xen_unified.c: Likewise.
|
||||||
|
* src/xend_internal.c: Likewise.
|
||||||
|
* src/xm_internal.c: Likewise.
|
||||||
|
* src/xml.c: Likewise.
|
||||||
|
* src/xmlrpc.c: Likewise.
|
||||||
|
* src/xs_internal.c: Likewise.
|
||||||
|
* tests/testutils.c: Likewise.
|
||||||
|
* tests/xencapstest.c: Likewise.
|
||||||
|
* tests/xmconfigtest.c: Likewise.
|
||||||
|
|
||||||
Fri Jan 25 12:00:00 BST 2008 Richard W.M. Jones <rjones@redhat.com>
|
Fri Jan 25 12:00:00 BST 2008 Richard W.M. Jones <rjones@redhat.com>
|
||||||
|
|
||||||
Clarify virsh documentation.
|
Clarify virsh documentation.
|
||||||
|
@ -505,8 +505,7 @@ retry2:
|
|||||||
memcpy(&request.extra.str[0], uuid, VIR_UUID_BUFLEN);
|
memcpy(&request.extra.str[0], uuid, VIR_UUID_BUFLEN);
|
||||||
strcpy(&request.extra.str[VIR_UUID_BUFLEN], name);
|
strcpy(&request.extra.str[VIR_UUID_BUFLEN], name);
|
||||||
}
|
}
|
||||||
if (name)
|
free(name);
|
||||||
free(name);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case VIR_PROXY_LOOKUP_UUID: {
|
case VIR_PROXY_LOOKUP_UUID: {
|
||||||
|
@ -375,7 +375,7 @@ def print_function_wrapper(name, output, export, include):
|
|||||||
if ret[0] == 'void':
|
if ret[0] == 'void':
|
||||||
if file == "python_accessor":
|
if file == "python_accessor":
|
||||||
if args[1][1] == "char *":
|
if args[1][1] == "char *":
|
||||||
c_call = "\n if (%s->%s != NULL) free(%s->%s);\n" % (
|
c_call = "\n free(%s->%s);\n" % (
|
||||||
args[0][0], args[1][0], args[0][0], args[1][0])
|
args[0][0], args[1][0], args[0][0], args[1][0])
|
||||||
c_call = c_call + " %s->%s = (%s)strdup((const xmlChar *)%s);\n" % (args[0][0],
|
c_call = c_call + " %s->%s = (%s)strdup((const xmlChar *)%s);\n" % (args[0][0],
|
||||||
args[1][0], args[1][1], args[1][0])
|
args[1][0], args[1][1], args[1][0])
|
||||||
|
@ -1133,7 +1133,7 @@ static void qemudDispatchClientFailure(struct qemud_server *server, struct qemud
|
|||||||
|
|
||||||
#if HAVE_SASL
|
#if HAVE_SASL
|
||||||
if (client->saslconn) sasl_dispose(&client->saslconn);
|
if (client->saslconn) sasl_dispose(&client->saslconn);
|
||||||
if (client->saslUsername) free(client->saslUsername);
|
free(client->saslUsername);
|
||||||
#endif
|
#endif
|
||||||
if (client->tlssession) gnutls_deinit (client->tlssession);
|
if (client->tlssession) gnutls_deinit (client->tlssession);
|
||||||
close(client->fd);
|
close(client->fd);
|
||||||
@ -1639,8 +1639,7 @@ static void qemudCleanup(struct qemud_server *server) {
|
|||||||
if (server->saslUsernameWhitelist) {
|
if (server->saslUsernameWhitelist) {
|
||||||
char **list = server->saslUsernameWhitelist;
|
char **list = server->saslUsernameWhitelist;
|
||||||
while (*list) {
|
while (*list) {
|
||||||
if (*list)
|
free(*list);
|
||||||
free(*list);
|
|
||||||
list++;
|
list++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -150,8 +150,7 @@ void
|
|||||||
virBufferFree(virBufferPtr buf)
|
virBufferFree(virBufferPtr buf)
|
||||||
{
|
{
|
||||||
if (buf) {
|
if (buf) {
|
||||||
if (buf->content)
|
free(buf->content);
|
||||||
free(buf->content);
|
|
||||||
free(buf);
|
free(buf);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -490,7 +490,6 @@ virConfParseValue(virConfParserCtxtPtr ctxt)
|
|||||||
ret = calloc(1, sizeof(*ret));
|
ret = calloc(1, sizeof(*ret));
|
||||||
if (ret == NULL) {
|
if (ret == NULL) {
|
||||||
virConfError(NULL, VIR_ERR_NO_MEMORY, _("allocating configuration"), 0);
|
virConfError(NULL, VIR_ERR_NO_MEMORY, _("allocating configuration"), 0);
|
||||||
if (str != NULL)
|
|
||||||
free(str);
|
free(str);
|
||||||
return(NULL);
|
return(NULL);
|
||||||
}
|
}
|
||||||
@ -642,8 +641,7 @@ virConfParseStatement(virConfParserCtxtPtr ctxt)
|
|||||||
if (virConfAddEntry(ctxt->conf, name, value, comm) == NULL) {
|
if (virConfAddEntry(ctxt->conf, name, value, comm) == NULL) {
|
||||||
free(name);
|
free(name);
|
||||||
virConfFreeValue(value);
|
virConfFreeValue(value);
|
||||||
if (comm != NULL)
|
free(comm);
|
||||||
free(comm);
|
|
||||||
return(-1);
|
return(-1);
|
||||||
}
|
}
|
||||||
return(0);
|
return(0);
|
||||||
@ -776,8 +774,7 @@ __virConfFree(virConfPtr conf)
|
|||||||
virConfEntryPtr next;
|
virConfEntryPtr next;
|
||||||
free(tmp->name);
|
free(tmp->name);
|
||||||
virConfFreeValue(tmp->value);
|
virConfFreeValue(tmp->value);
|
||||||
if (tmp->comment)
|
free(tmp->comment);
|
||||||
free(tmp->comment);
|
|
||||||
next = tmp->next;
|
next = tmp->next;
|
||||||
free(tmp);
|
free(tmp);
|
||||||
tmp = next;
|
tmp = next;
|
||||||
|
15
src/hash.c
15
src/hash.c
@ -226,8 +226,7 @@ virHashFree(virHashTablePtr table, virHashDeallocator f)
|
|||||||
next = iter->next;
|
next = iter->next;
|
||||||
if ((f != NULL) && (iter->payload != NULL))
|
if ((f != NULL) && (iter->payload != NULL))
|
||||||
f(iter->payload, iter->name);
|
f(iter->payload, iter->name);
|
||||||
if (iter->name)
|
free(iter->name);
|
||||||
free(iter->name);
|
|
||||||
iter->payload = NULL;
|
iter->payload = NULL;
|
||||||
if (!inside_table)
|
if (!inside_table)
|
||||||
free(iter);
|
free(iter);
|
||||||
@ -453,8 +452,7 @@ virHashRemoveEntry(virHashTablePtr table, const char *name,
|
|||||||
if ((f != NULL) && (entry->payload != NULL))
|
if ((f != NULL) && (entry->payload != NULL))
|
||||||
f(entry->payload, entry->name);
|
f(entry->payload, entry->name);
|
||||||
entry->payload = NULL;
|
entry->payload = NULL;
|
||||||
if (entry->name)
|
free(entry->name);
|
||||||
free(entry->name);
|
|
||||||
if (prev) {
|
if (prev) {
|
||||||
prev->next = entry->next;
|
prev->next = entry->next;
|
||||||
free(entry);
|
free(entry);
|
||||||
@ -538,8 +536,7 @@ int virHashRemoveSet(virHashTablePtr table, virHashSearcher iter, virHashDealloc
|
|||||||
if (iter(entry->payload, entry->name, data)) {
|
if (iter(entry->payload, entry->name, data)) {
|
||||||
count++;
|
count++;
|
||||||
f(entry->payload, entry->name);
|
f(entry->payload, entry->name);
|
||||||
if (entry->name)
|
free(entry->name);
|
||||||
free(entry->name);
|
|
||||||
if (prev) {
|
if (prev) {
|
||||||
prev->next = entry->next;
|
prev->next = entry->next;
|
||||||
free(entry);
|
free(entry);
|
||||||
@ -812,8 +809,7 @@ __virGetDomain(virConnectPtr conn, const char *name, const unsigned char *uuid)
|
|||||||
error:
|
error:
|
||||||
pthread_mutex_unlock(&conn->lock);
|
pthread_mutex_unlock(&conn->lock);
|
||||||
if (ret != NULL) {
|
if (ret != NULL) {
|
||||||
if (ret->name != NULL)
|
free(ret->name );
|
||||||
free(ret->name );
|
|
||||||
free(ret);
|
free(ret);
|
||||||
}
|
}
|
||||||
return(NULL);
|
return(NULL);
|
||||||
@ -946,8 +942,7 @@ __virGetNetwork(virConnectPtr conn, const char *name, const unsigned char *uuid)
|
|||||||
error:
|
error:
|
||||||
pthread_mutex_unlock(&conn->lock);
|
pthread_mutex_unlock(&conn->lock);
|
||||||
if (ret != NULL) {
|
if (ret != NULL) {
|
||||||
if (ret->name != NULL)
|
free(ret->name );
|
||||||
free(ret->name );
|
|
||||||
free(ret);
|
free(ret);
|
||||||
}
|
}
|
||||||
return(NULL);
|
return(NULL);
|
||||||
|
@ -254,8 +254,7 @@ iptRulesSave(iptRules *rules)
|
|||||||
static void
|
static void
|
||||||
iptRuleFree(iptRule *rule)
|
iptRuleFree(iptRule *rule)
|
||||||
{
|
{
|
||||||
if (rule->rule)
|
free(rule->rule);
|
||||||
free(rule->rule);
|
|
||||||
rule->rule = NULL;
|
rule->rule = NULL;
|
||||||
|
|
||||||
if (rule->argv) {
|
if (rule->argv) {
|
||||||
@ -488,8 +487,7 @@ iptablesAddRemoveRule(iptRules *rules, int action, const char *arg, ...)
|
|||||||
}
|
}
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (rule)
|
free(rule);
|
||||||
free(rule);
|
|
||||||
|
|
||||||
if (argv) {
|
if (argv) {
|
||||||
n = 0;
|
n = 0;
|
||||||
|
@ -615,7 +615,7 @@ do_open (const char *name,
|
|||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
failed:
|
failed:
|
||||||
if (ret->name) free (ret->name);
|
free (ret->name);
|
||||||
if (ret->driver) ret->driver->close (ret);
|
if (ret->driver) ret->driver->close (ret);
|
||||||
if (uri) xmlFreeURI(uri);
|
if (uri) xmlFreeURI(uri);
|
||||||
virUnrefConnect(ret);
|
virUnrefConnect(ret);
|
||||||
@ -1974,8 +1974,8 @@ virDomainMigrate (virDomainPtr domain,
|
|||||||
ddomain = virDomainLookupByName (dconn, dname);
|
ddomain = virDomainLookupByName (dconn, dname);
|
||||||
|
|
||||||
done:
|
done:
|
||||||
if (uri_out) free (uri_out);
|
free (uri_out);
|
||||||
if (cookie) free (cookie);
|
free (cookie);
|
||||||
return ddomain;
|
return ddomain;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -494,8 +494,7 @@ static struct openvz_vm_def
|
|||||||
return def;
|
return def;
|
||||||
|
|
||||||
bail_out:
|
bail_out:
|
||||||
if (prop)
|
free(prop);
|
||||||
free(prop);
|
|
||||||
if (obj)
|
if (obj)
|
||||||
xmlXPathFreeObject(obj);
|
xmlXPathFreeObject(obj);
|
||||||
if (ctxt)
|
if (ctxt)
|
||||||
|
@ -1379,8 +1379,7 @@ static struct qemud_vm_def *qemudParseXML(virConnectPtr conn,
|
|||||||
return def;
|
return def;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (prop)
|
free(prop);
|
||||||
free(prop);
|
|
||||||
if (obj)
|
if (obj)
|
||||||
xmlXPathFreeObject(obj);
|
xmlXPathFreeObject(obj);
|
||||||
if (ctxt)
|
if (ctxt)
|
||||||
@ -1468,8 +1467,7 @@ qemudNetworkIfaceConnect(virConnectPtr conn,
|
|||||||
no_memory:
|
no_memory:
|
||||||
qemudReportError(conn, NULL, NULL, VIR_ERR_NO_MEMORY, "tapfds");
|
qemudReportError(conn, NULL, NULL, VIR_ERR_NO_MEMORY, "tapfds");
|
||||||
error:
|
error:
|
||||||
if (retval)
|
free(retval);
|
||||||
free(retval);
|
|
||||||
if (tapfd != -1)
|
if (tapfd != -1)
|
||||||
close(tapfd);
|
close(tapfd);
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -1941,7 +1939,7 @@ qemudParseVMDeviceDef(virConnectPtr conn,
|
|||||||
|
|
||||||
error:
|
error:
|
||||||
if (xml) xmlFreeDoc(xml);
|
if (xml) xmlFreeDoc(xml);
|
||||||
if (dev) free(dev);
|
free(dev);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -228,7 +228,7 @@ qemudStartup(void) {
|
|||||||
|
|
||||||
out_of_memory:
|
out_of_memory:
|
||||||
qemudLog (QEMUD_ERR, "qemudStartup: out of memory");
|
qemudLog (QEMUD_ERR, "qemudStartup: out of memory");
|
||||||
if (base) free (base);
|
free (base);
|
||||||
free(qemu_driver);
|
free(qemu_driver);
|
||||||
qemu_driver = NULL;
|
qemu_driver = NULL;
|
||||||
return -1;
|
return -1;
|
||||||
@ -330,17 +330,11 @@ qemudShutdown(void) {
|
|||||||
qemu_driver->nactivenetworks = 0;
|
qemu_driver->nactivenetworks = 0;
|
||||||
qemu_driver->ninactivenetworks = 0;
|
qemu_driver->ninactivenetworks = 0;
|
||||||
|
|
||||||
if (qemu_driver->configDir)
|
free(qemu_driver->configDir);
|
||||||
free(qemu_driver->configDir);
|
free(qemu_driver->autostartDir);
|
||||||
if (qemu_driver->autostartDir)
|
free(qemu_driver->networkConfigDir);
|
||||||
free(qemu_driver->autostartDir);
|
free(qemu_driver->networkAutostartDir);
|
||||||
if (qemu_driver->networkConfigDir)
|
free(qemu_driver->vncTLSx509certdir);
|
||||||
free(qemu_driver->networkConfigDir);
|
|
||||||
if (qemu_driver->networkAutostartDir)
|
|
||||||
free(qemu_driver->networkAutostartDir);
|
|
||||||
|
|
||||||
if (qemu_driver->vncTLSx509certdir)
|
|
||||||
free(qemu_driver->vncTLSx509certdir);
|
|
||||||
|
|
||||||
if (qemu_driver->brctl)
|
if (qemu_driver->brctl)
|
||||||
brShutdown(qemu_driver->brctl);
|
brShutdown(qemu_driver->brctl);
|
||||||
|
@ -735,13 +735,13 @@ doRemoteOpen (virConnectPtr conn,
|
|||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
/* Free up the URL and strings. */
|
/* Free up the URL and strings. */
|
||||||
if (name) free (name);
|
free (name);
|
||||||
if (command) free (command);
|
free (command);
|
||||||
if (sockname) free (sockname);
|
free (sockname);
|
||||||
if (authtype) free (authtype);
|
free (authtype);
|
||||||
if (netcat) free (netcat);
|
free (netcat);
|
||||||
if (username) free (username);
|
free (username);
|
||||||
if (port) free (port);
|
free (port);
|
||||||
if (cmd_argv) {
|
if (cmd_argv) {
|
||||||
char **cmd_argv_ptr = cmd_argv;
|
char **cmd_argv_ptr = cmd_argv;
|
||||||
while (*cmd_argv_ptr) {
|
while (*cmd_argv_ptr) {
|
||||||
@ -1139,10 +1139,10 @@ doRemoteClose (virConnectPtr conn, struct private_data *priv)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Free hostname copy */
|
/* Free hostname copy */
|
||||||
if (priv->hostname) free (priv->hostname);
|
free (priv->hostname);
|
||||||
|
|
||||||
/* See comment for remoteType. */
|
/* See comment for remoteType. */
|
||||||
if (priv->type) free (priv->type);
|
free (priv->type);
|
||||||
|
|
||||||
/* Free private data. */
|
/* Free private data. */
|
||||||
priv->magic = DEAD;
|
priv->magic = DEAD;
|
||||||
@ -3267,7 +3267,7 @@ remoteAuthSASL (virConnectPtr conn, struct private_data *priv, int in_open,
|
|||||||
|
|
||||||
/* This server call shows complete, and earlier client step was OK */
|
/* This server call shows complete, and earlier client step was OK */
|
||||||
if (complete && err == SASL_OK) {
|
if (complete && err == SASL_OK) {
|
||||||
if (serverin) free(serverin);
|
free(serverin);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3297,9 +3297,9 @@ remoteAuthSASL (virConnectPtr conn, struct private_data *priv, int in_open,
|
|||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
if (localAddr) free(localAddr);
|
free(localAddr);
|
||||||
if (remoteAddr) free(remoteAddr);
|
free(remoteAddr);
|
||||||
if (serverin) free(serverin);
|
free(serverin);
|
||||||
|
|
||||||
free(saslcb);
|
free(saslcb);
|
||||||
remoteAuthFreeCredentials(cred, ncred);
|
remoteAuthFreeCredentials(cred, ncred);
|
||||||
|
24
src/test.c
24
src/test.c
@ -354,8 +354,7 @@ static int testLoadDomain(virConnectPtr conn,
|
|||||||
return (handle);
|
return (handle);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (name)
|
free(name);
|
||||||
free(name);
|
|
||||||
return (-1);
|
return (-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -525,16 +524,11 @@ static int testLoadNetwork(virConnectPtr conn,
|
|||||||
return (handle);
|
return (handle);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (ipaddress)
|
free(ipaddress);
|
||||||
free(ipaddress);
|
free(ipnetmask);
|
||||||
if (ipnetmask)
|
free(dhcpstart);
|
||||||
free(ipnetmask);
|
free(dhcpend);
|
||||||
if (dhcpstart)
|
free(name);
|
||||||
free(dhcpstart);
|
|
||||||
if (dhcpend)
|
|
||||||
free(dhcpend);
|
|
||||||
if (name)
|
|
||||||
free(name);
|
|
||||||
return (-1);
|
return (-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -838,10 +832,8 @@ static int testOpenFromFile(virConnectPtr conn,
|
|||||||
return (0);
|
return (0);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (domains != NULL)
|
free(domains);
|
||||||
free(domains);
|
free(networks);
|
||||||
if (networks != NULL)
|
|
||||||
free(networks);
|
|
||||||
if (xml)
|
if (xml)
|
||||||
xmlFreeDoc(xml);
|
xmlFreeDoc(xml);
|
||||||
if (fd != -1)
|
if (fd != -1)
|
||||||
|
53
src/virsh.c
53
src/virsh.c
@ -428,8 +428,7 @@ cmdConnect(vshControl * ctl, vshCmd * cmd)
|
|||||||
ctl->conn = NULL;
|
ctl->conn = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ctl->name)
|
free(ctl->name);
|
||||||
free(ctl->name);
|
|
||||||
ctl->name = vshStrdup(ctl, vshCommandOptString(cmd, "name", NULL));
|
ctl->name = vshStrdup(ctl, vshCommandOptString(cmd, "name", NULL));
|
||||||
|
|
||||||
if (!ro) {
|
if (!ro) {
|
||||||
@ -577,8 +576,7 @@ cmdList(vshControl * ctl, vshCmd * cmd ATTRIBUTE_UNUSED)
|
|||||||
maxname = virConnectNumOfDefinedDomains(ctl->conn);
|
maxname = virConnectNumOfDefinedDomains(ctl->conn);
|
||||||
if (maxname < 0) {
|
if (maxname < 0) {
|
||||||
vshError(ctl, FALSE, "%s", _("Failed to list inactive domains"));
|
vshError(ctl, FALSE, "%s", _("Failed to list inactive domains"));
|
||||||
if (ids)
|
free(ids);
|
||||||
free(ids);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
if (maxname) {
|
if (maxname) {
|
||||||
@ -586,8 +584,7 @@ cmdList(vshControl * ctl, vshCmd * cmd ATTRIBUTE_UNUSED)
|
|||||||
|
|
||||||
if ((maxname = virConnectListDefinedDomains(ctl->conn, names, maxname)) < 0) {
|
if ((maxname = virConnectListDefinedDomains(ctl->conn, names, maxname)) < 0) {
|
||||||
vshError(ctl, FALSE, "%s", _("Failed to list inactive domains"));
|
vshError(ctl, FALSE, "%s", _("Failed to list inactive domains"));
|
||||||
if (ids)
|
free(ids);
|
||||||
free(ids);
|
|
||||||
free(names);
|
free(names);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
@ -639,10 +636,8 @@ cmdList(vshControl * ctl, vshCmd * cmd ATTRIBUTE_UNUSED)
|
|||||||
virDomainFree(dom);
|
virDomainFree(dom);
|
||||||
free(names[i]);
|
free(names[i]);
|
||||||
}
|
}
|
||||||
if (ids)
|
free(ids);
|
||||||
free(ids);
|
free(names);
|
||||||
if (names)
|
|
||||||
free(names);
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1217,8 +1212,7 @@ cmdSchedinfo(vshControl * ctl, vshCmd * cmd)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
cleanup:
|
cleanup:
|
||||||
if (params)
|
free(params);
|
||||||
free(params);
|
|
||||||
virDomainFree(dom);
|
virDomainFree(dom);
|
||||||
return ret_val;
|
return ret_val;
|
||||||
}
|
}
|
||||||
@ -2513,8 +2507,7 @@ cmdNetworkList(vshControl * ctl, vshCmd * cmd ATTRIBUTE_UNUSED)
|
|||||||
maxinactive = virConnectNumOfDefinedNetworks(ctl->conn);
|
maxinactive = virConnectNumOfDefinedNetworks(ctl->conn);
|
||||||
if (maxinactive < 0) {
|
if (maxinactive < 0) {
|
||||||
vshError(ctl, FALSE, "%s", _("Failed to list inactive networks"));
|
vshError(ctl, FALSE, "%s", _("Failed to list inactive networks"));
|
||||||
if (activeNames)
|
free(activeNames);
|
||||||
free(activeNames);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
if (maxinactive) {
|
if (maxinactive) {
|
||||||
@ -2522,8 +2515,7 @@ cmdNetworkList(vshControl * ctl, vshCmd * cmd ATTRIBUTE_UNUSED)
|
|||||||
|
|
||||||
if ((maxinactive = virConnectListDefinedNetworks(ctl->conn, inactiveNames, maxinactive)) < 0) {
|
if ((maxinactive = virConnectListDefinedNetworks(ctl->conn, inactiveNames, maxinactive)) < 0) {
|
||||||
vshError(ctl, FALSE, "%s", _("Failed to list inactive networks"));
|
vshError(ctl, FALSE, "%s", _("Failed to list inactive networks"));
|
||||||
if (activeNames)
|
free(activeNames);
|
||||||
free(activeNames);
|
|
||||||
free(inactiveNames);
|
free(inactiveNames);
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
@ -2581,10 +2573,8 @@ cmdNetworkList(vshControl * ctl, vshCmd * cmd ATTRIBUTE_UNUSED)
|
|||||||
virNetworkFree(network);
|
virNetworkFree(network);
|
||||||
free(inactiveNames[i]);
|
free(inactiveNames[i]);
|
||||||
}
|
}
|
||||||
if (activeNames)
|
free(activeNames);
|
||||||
free(activeNames);
|
free(inactiveNames);
|
||||||
if (inactiveNames)
|
|
||||||
free(inactiveNames);
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3230,10 +3220,8 @@ cmdAttachInterface(vshControl * ctl, vshCmd * cmd)
|
|||||||
cleanup:
|
cleanup:
|
||||||
if (dom)
|
if (dom)
|
||||||
virDomainFree(dom);
|
virDomainFree(dom);
|
||||||
if (buf)
|
free(buf);
|
||||||
free(buf);
|
free(tmp);
|
||||||
if (tmp)
|
|
||||||
free(tmp);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3516,10 +3504,8 @@ cmdAttachDisk(vshControl * ctl, vshCmd * cmd)
|
|||||||
cleanup:
|
cleanup:
|
||||||
if (dom)
|
if (dom)
|
||||||
virDomainFree(dom);
|
virDomainFree(dom);
|
||||||
if (buf)
|
free(buf);
|
||||||
free(buf);
|
free(tmp);
|
||||||
if (tmp)
|
|
||||||
free(tmp);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3868,8 +3854,7 @@ vshCommandOptFree(vshCmdOpt * arg)
|
|||||||
|
|
||||||
a = a->next;
|
a = a->next;
|
||||||
|
|
||||||
if (tmp->data)
|
free(tmp->data);
|
||||||
free(tmp->data);
|
|
||||||
free(tmp);
|
free(tmp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -4267,7 +4252,7 @@ vshCommandParse(vshControl * ctl, char *cmdstr)
|
|||||||
c->next = NULL;
|
c->next = NULL;
|
||||||
|
|
||||||
if (!vshCommandCheckOpts(ctl, c)) {
|
if (!vshCommandCheckOpts(ctl, c)) {
|
||||||
if(c) free(c);
|
free(c);
|
||||||
goto syntaxError;
|
goto syntaxError;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4286,8 +4271,7 @@ vshCommandParse(vshControl * ctl, char *cmdstr)
|
|||||||
vshCommandFree(ctl->cmd);
|
vshCommandFree(ctl->cmd);
|
||||||
if (first)
|
if (first)
|
||||||
vshCommandOptFree(first);
|
vshCommandOptFree(first);
|
||||||
if (tkdata)
|
free(tkdata);
|
||||||
free(tkdata);
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4791,8 +4775,7 @@ static int
|
|||||||
vshDeinit(vshControl * ctl)
|
vshDeinit(vshControl * ctl)
|
||||||
{
|
{
|
||||||
vshCloseLogFile(ctl);
|
vshCloseLogFile(ctl);
|
||||||
if (ctl->name)
|
free(ctl->name);
|
||||||
free(ctl->name);
|
|
||||||
if (ctl->conn) {
|
if (ctl->conn) {
|
||||||
if (virConnectClose(ctl->conn) != 0) {
|
if (virConnectClose(ctl->conn) != 0) {
|
||||||
ctl->conn = NULL; /* prevent recursive call from vshError() */
|
ctl->conn = NULL; /* prevent recursive call from vshError() */
|
||||||
|
@ -109,14 +109,10 @@ virResetError(virErrorPtr err)
|
|||||||
{
|
{
|
||||||
if (err == NULL)
|
if (err == NULL)
|
||||||
return;
|
return;
|
||||||
if (err->message != NULL)
|
free(err->message);
|
||||||
free(err->message);
|
free(err->str1);
|
||||||
if (err->str1 != NULL)
|
free(err->str2);
|
||||||
free(err->str1);
|
free(err->str3);
|
||||||
if (err->str2 != NULL)
|
|
||||||
free(err->str2);
|
|
||||||
if (err->str3 != NULL)
|
|
||||||
free(err->str3);
|
|
||||||
memset(err, 0, sizeof(virError));
|
memset(err, 0, sizeof(virError));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1680,8 +1680,7 @@ virXen_setvcpumap(int handle, int id, unsigned int vcpu,
|
|||||||
op.u.setvcpumapd5.cpumap.nr_cpus = nr_cpus;
|
op.u.setvcpumapd5.cpumap.nr_cpus = nr_cpus;
|
||||||
}
|
}
|
||||||
ret = xenHypervisorDoV2Dom(handle, &op);
|
ret = xenHypervisorDoV2Dom(handle, &op);
|
||||||
if (new)
|
free(new);
|
||||||
free(new);
|
|
||||||
|
|
||||||
if (unlock_pages(cpumap, maplen) < 0) {
|
if (unlock_pages(cpumap, maplen) < 0) {
|
||||||
virXenError(NULL, VIR_ERR_XEN_CALL, " release", maplen);
|
virXenError(NULL, VIR_ERR_XEN_CALL, " release", maplen);
|
||||||
@ -2056,15 +2055,13 @@ xenHypervisorInit(void)
|
|||||||
virXenError(NULL, VIR_ERR_XEN_CALL, " ioctl ", IOCTL_PRIVCMD_HYPERCALL);
|
virXenError(NULL, VIR_ERR_XEN_CALL, " ioctl ", IOCTL_PRIVCMD_HYPERCALL);
|
||||||
close(fd);
|
close(fd);
|
||||||
in_init = 0;
|
in_init = 0;
|
||||||
if (ipt)
|
free(ipt);
|
||||||
free(ipt);
|
|
||||||
return(-1);
|
return(-1);
|
||||||
|
|
||||||
done:
|
done:
|
||||||
close(fd);
|
close(fd);
|
||||||
in_init = 0;
|
in_init = 0;
|
||||||
if (ipt)
|
free(ipt);
|
||||||
free(ipt);
|
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -200,12 +200,9 @@ xenDomainUsedCpus(virDomainPtr dom)
|
|||||||
}
|
}
|
||||||
|
|
||||||
done:
|
done:
|
||||||
if (cpulist != NULL)
|
free(cpulist);
|
||||||
free(cpulist);
|
free(cpumap);
|
||||||
if (cpumap != NULL)
|
free(cpuinfo);
|
||||||
free(cpumap);
|
|
||||||
if (cpuinfo != NULL)
|
|
||||||
free(cpuinfo);
|
|
||||||
return(res);
|
return(res);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -912,9 +909,8 @@ xenUnifiedDomainDumpXML (virDomainPtr dom, int flags)
|
|||||||
char *cpus, *res;
|
char *cpus, *res;
|
||||||
cpus = xenDomainUsedCpus(dom);
|
cpus = xenDomainUsedCpus(dom);
|
||||||
res = xenDaemonDomainDumpXML(dom, flags, cpus);
|
res = xenDaemonDomainDumpXML(dom, flags, cpus);
|
||||||
if (cpus != NULL)
|
|
||||||
free(cpus);
|
free(cpus);
|
||||||
return(res);
|
return(res);
|
||||||
}
|
}
|
||||||
if (priv->opened[XEN_UNIFIED_PROXY_OFFSET])
|
if (priv->opened[XEN_UNIFIED_PROXY_OFFSET])
|
||||||
return xenProxyDomainDumpXML(dom, flags);
|
return xenProxyDomainDumpXML(dom, flags);
|
||||||
|
@ -620,8 +620,7 @@ xend_op_ext2(virConnectPtr xend, const char *path, char *error,
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = http2unix(xend, xend_post(xend, path, buf.content, error, n_error));
|
ret = http2unix(xend, xend_post(xend, path, buf.content, error, n_error));
|
||||||
if (buf.content != NULL)
|
free(buf.content);
|
||||||
free(buf.content);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@ -1640,10 +1639,8 @@ xend_parse_sexp_desc(virConnectPtr conn, struct sexpr *root,
|
|||||||
virBufferAdd(&buf, " </disk>\n", 12);
|
virBufferAdd(&buf, " </disk>\n", 12);
|
||||||
|
|
||||||
bad_parse:
|
bad_parse:
|
||||||
if (drvName)
|
free(drvName);
|
||||||
free(drvName);
|
free(drvType);
|
||||||
if (drvType)
|
|
||||||
free(drvType);
|
|
||||||
} else if (sexpr_lookup(node, "device/vif")) {
|
} else if (sexpr_lookup(node, "device/vif")) {
|
||||||
const char *tmp2;
|
const char *tmp2;
|
||||||
tmp2 = sexpr_node(node, "device/vif/script");
|
tmp2 = sexpr_node(node, "device/vif/script");
|
||||||
@ -1809,8 +1806,7 @@ xend_parse_sexp_desc(virConnectPtr conn, struct sexpr *root,
|
|||||||
return (buf.content);
|
return (buf.content);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (buf.content != NULL)
|
free(buf.content);
|
||||||
free(buf.content);
|
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2809,7 +2805,6 @@ xenDaemonListDomains(virConnectPtr conn, int *ids, int maxids)
|
|||||||
}
|
}
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (root != NULL)
|
|
||||||
sexpr_free(root);
|
sexpr_free(root);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
@ -2843,7 +2838,6 @@ xenDaemonNumOfDomains(virConnectPtr conn)
|
|||||||
}
|
}
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (root != NULL)
|
|
||||||
sexpr_free(root);
|
sexpr_free(root);
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
@ -2877,8 +2871,7 @@ xenDaemonLookupByID(virConnectPtr conn, int id) {
|
|||||||
return (ret);
|
return (ret);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (name != NULL)
|
free(name);
|
||||||
free(name);
|
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3152,10 +3145,8 @@ xenDaemonCreateLinux(virConnectPtr conn, const char *xmlDesc,
|
|||||||
sexpr = virDomainParseXMLDesc(conn, xmlDesc, &name, priv->xendConfigVersion);
|
sexpr = virDomainParseXMLDesc(conn, xmlDesc, &name, priv->xendConfigVersion);
|
||||||
if ((sexpr == NULL) || (name == NULL)) {
|
if ((sexpr == NULL) || (name == NULL)) {
|
||||||
virXendError(conn, VIR_ERR_XML_ERROR, "domain");
|
virXendError(conn, VIR_ERR_XML_ERROR, "domain");
|
||||||
if (sexpr != NULL)
|
free(sexpr);
|
||||||
free(sexpr);
|
free(name);
|
||||||
if (name != NULL)
|
|
||||||
free(name);
|
|
||||||
|
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
@ -3187,8 +3178,7 @@ xenDaemonCreateLinux(virConnectPtr conn, const char *xmlDesc,
|
|||||||
xenDaemonDomainDestroy(dom);
|
xenDaemonDomainDestroy(dom);
|
||||||
virUnrefDomain(dom);
|
virUnrefDomain(dom);
|
||||||
}
|
}
|
||||||
if (name != NULL)
|
free(name);
|
||||||
free(name);
|
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3228,8 +3218,7 @@ xenDaemonAttachDevice(virDomainPtr domain, const char *xml)
|
|||||||
str = virDomainGetOSType(domain);
|
str = virDomainGetOSType(domain);
|
||||||
if (strcmp(str, "linux"))
|
if (strcmp(str, "linux"))
|
||||||
hvm = 1;
|
hvm = 1;
|
||||||
if (str)
|
free(str);
|
||||||
free(str);
|
|
||||||
sexpr = virParseXMLDevice(domain->conn, xml, hvm, priv->xendConfigVersion);
|
sexpr = virParseXMLDevice(domain->conn, xml, hvm, priv->xendConfigVersion);
|
||||||
if (sexpr == NULL)
|
if (sexpr == NULL)
|
||||||
return (-1);
|
return (-1);
|
||||||
@ -3460,10 +3449,8 @@ virDomainPtr xenDaemonDomainDefineXML(virConnectPtr conn, const char *xmlDesc) {
|
|||||||
sexpr = virDomainParseXMLDesc(conn, xmlDesc, &name, priv->xendConfigVersion);
|
sexpr = virDomainParseXMLDesc(conn, xmlDesc, &name, priv->xendConfigVersion);
|
||||||
if ((sexpr == NULL) || (name == NULL)) {
|
if ((sexpr == NULL) || (name == NULL)) {
|
||||||
virXendError(conn, VIR_ERR_XML_ERROR, "domain");
|
virXendError(conn, VIR_ERR_XML_ERROR, "domain");
|
||||||
if (sexpr != NULL)
|
free(sexpr);
|
||||||
free(sexpr);
|
free(name);
|
||||||
if (name != NULL)
|
|
||||||
free(name);
|
|
||||||
|
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
@ -3482,8 +3469,7 @@ virDomainPtr xenDaemonDomainDefineXML(virConnectPtr conn, const char *xmlDesc) {
|
|||||||
|
|
||||||
return (dom);
|
return (dom);
|
||||||
error:
|
error:
|
||||||
if (name != NULL)
|
free(name);
|
||||||
free(name);
|
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
int xenDaemonDomainCreate(virDomainPtr domain)
|
int xenDaemonDomainCreate(virDomainPtr domain)
|
||||||
@ -3558,8 +3544,7 @@ xenDaemonNumOfDefinedDomains(virConnectPtr conn)
|
|||||||
}
|
}
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (root != NULL)
|
sexpr_free(root);
|
||||||
sexpr_free(root);
|
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3591,8 +3576,7 @@ int xenDaemonListDefinedDomains(virConnectPtr conn, char **const names, int maxn
|
|||||||
}
|
}
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (root != NULL)
|
sexpr_free(root);
|
||||||
sexpr_free(root);
|
|
||||||
return(ret);
|
return(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1307,10 +1307,8 @@ int xenXMDomainPinVcpu(virDomainPtr domain,
|
|||||||
ret = 0;
|
ret = 0;
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
if(mapstr)
|
free(mapstr);
|
||||||
free(mapstr);
|
free(ranges);
|
||||||
if(ranges)
|
|
||||||
free(ranges);
|
|
||||||
return (ret);
|
return (ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1865,8 +1863,7 @@ static char *xenXMParseXMLVif(virConnectPtr conn, xmlNodePtr node, int hvm) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
if (bridge != NULL)
|
free(bridge);
|
||||||
free(bridge);
|
|
||||||
if (mac != NULL)
|
if (mac != NULL)
|
||||||
xmlFree(mac);
|
xmlFree(mac);
|
||||||
if (source != NULL)
|
if (source != NULL)
|
||||||
@ -2238,8 +2235,7 @@ virConfPtr xenXMParseXMLToConfig(virConnectPtr conn, const char *xml) {
|
|||||||
if (!vif)
|
if (!vif)
|
||||||
goto error;
|
goto error;
|
||||||
if (!(thisVif = malloc(sizeof(*thisVif)))) {
|
if (!(thisVif = malloc(sizeof(*thisVif)))) {
|
||||||
if (vif)
|
free(vif);
|
||||||
free(vif);
|
|
||||||
xenXMError(conn, VIR_ERR_NO_MEMORY, "config");
|
xenXMError(conn, VIR_ERR_NO_MEMORY, "config");
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
@ -2410,8 +2406,7 @@ virDomainPtr xenXMDomainDefineXML(virConnectPtr conn, const char *xml) {
|
|||||||
return (ret);
|
return (ret);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (entry)
|
free(entry);
|
||||||
free(entry);
|
|
||||||
if (conf)
|
if (conf)
|
||||||
virConfFree(conf);
|
virConfFree(conf);
|
||||||
return (NULL);
|
return (NULL);
|
||||||
|
21
src/xml.c
21
src/xml.c
@ -397,14 +397,12 @@ virParseXenCpuTopology(virConnectPtr conn, virBufferPtr xml,
|
|||||||
parse_error:
|
parse_error:
|
||||||
virXMLError(conn, VIR_ERR_XEN_CALL, _("topology syntax error"), 0);
|
virXMLError(conn, VIR_ERR_XEN_CALL, _("topology syntax error"), 0);
|
||||||
error:
|
error:
|
||||||
if (cpuset != NULL)
|
free(cpuset);
|
||||||
free(cpuset);
|
|
||||||
|
|
||||||
return (-1);
|
return (-1);
|
||||||
|
|
||||||
memory_error:
|
memory_error:
|
||||||
if (cpuset != NULL)
|
free(cpuset);
|
||||||
free(cpuset);
|
|
||||||
virXMLError(conn, VIR_ERR_NO_MEMORY, _("allocate buffer"), 0);
|
virXMLError(conn, VIR_ERR_NO_MEMORY, _("allocate buffer"), 0);
|
||||||
return (-1);
|
return (-1);
|
||||||
}
|
}
|
||||||
@ -1066,16 +1064,14 @@ virDomainParseXMLOSDescHVM(virConnectPtr conn, xmlNodePtr node,
|
|||||||
if (str != NULL && !strcmp(str, "localtime")) {
|
if (str != NULL && !strcmp(str, "localtime")) {
|
||||||
virBufferAdd(buf, "(localtime 1)", 13);
|
virBufferAdd(buf, "(localtime 1)", 13);
|
||||||
}
|
}
|
||||||
if (str)
|
free(str);
|
||||||
free(str);
|
|
||||||
|
|
||||||
virBufferAdd(buf, "))", 2);
|
virBufferAdd(buf, "))", 2);
|
||||||
|
|
||||||
return (0);
|
return (0);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (nodes)
|
free(nodes);
|
||||||
free(nodes);
|
|
||||||
return (-1);
|
return (-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1723,8 +1719,7 @@ virDomainParseXMLDesc(virConnectPtr conn, const char *xmldesc, char **name,
|
|||||||
vcpus, xendConfigVersion);
|
vcpus, xendConfigVersion);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (str != NULL)
|
free(str);
|
||||||
free(str);
|
|
||||||
|
|
||||||
if (res != 0)
|
if (res != 0)
|
||||||
goto error;
|
goto error;
|
||||||
@ -1797,8 +1792,7 @@ virDomainParseXMLDesc(virConnectPtr conn, const char *xmldesc, char **name,
|
|||||||
return (buf.content);
|
return (buf.content);
|
||||||
|
|
||||||
error:
|
error:
|
||||||
if (nam != NULL)
|
free(nam);
|
||||||
free(nam);
|
|
||||||
if (name != NULL)
|
if (name != NULL)
|
||||||
*name = NULL;
|
*name = NULL;
|
||||||
if (ctxt != NULL)
|
if (ctxt != NULL)
|
||||||
@ -1807,8 +1801,7 @@ virDomainParseXMLDesc(virConnectPtr conn, const char *xmldesc, char **name,
|
|||||||
xmlFreeDoc(xml);
|
xmlFreeDoc(xml);
|
||||||
if (pctxt != NULL)
|
if (pctxt != NULL)
|
||||||
xmlFreeParserCtxt(pctxt);
|
xmlFreeParserCtxt(pctxt);
|
||||||
if (buf.content != NULL)
|
free(buf.content);
|
||||||
free(buf.content);
|
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
20
src/xmlrpc.c
20
src/xmlrpc.c
@ -115,8 +115,7 @@ static xmlRpcValuePtr xmlRpcValueUnmarshalInteger(xmlNodePtr node)
|
|||||||
|
|
||||||
if (ret && value)
|
if (ret && value)
|
||||||
ret->value.integer = atoi(value);
|
ret->value.integer = atoi(value);
|
||||||
if (value)
|
free(value);
|
||||||
free(value);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -131,8 +130,7 @@ static xmlRpcValuePtr xmlRpcValueUnmarshalBoolean(xmlNodePtr node)
|
|||||||
ret->value.boolean = true;
|
ret->value.boolean = true;
|
||||||
else
|
else
|
||||||
ret->value.boolean = false;
|
ret->value.boolean = false;
|
||||||
if (value)
|
free(value);
|
||||||
free(value);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -143,8 +141,7 @@ static xmlRpcValuePtr xmlRpcValueUnmarshalDouble(xmlNodePtr node)
|
|||||||
|
|
||||||
if (ret && value)
|
if (ret && value)
|
||||||
ret->value.real = atof(value);
|
ret->value.real = atof(value);
|
||||||
if (value)
|
free(value);
|
||||||
free(value);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -198,8 +195,7 @@ static xmlRpcValueDictElementPtr xmlRpcValueUnmarshalDictElement(xmlNodePtr node
|
|||||||
ret->value = xmlRpcValueUnmarshal(cur);
|
ret->value = xmlRpcValueUnmarshal(cur);
|
||||||
} else {
|
} else {
|
||||||
xmlRpcError(VIR_ERR_XML_ERROR, _("unexpected dict node"), 0);
|
xmlRpcError(VIR_ERR_XML_ERROR, _("unexpected dict node"), 0);
|
||||||
if (ret->name)
|
free(ret->name);
|
||||||
free(ret->name);
|
|
||||||
if (ret->value)
|
if (ret->value)
|
||||||
xmlRpcValueFree(ret->value);
|
xmlRpcValueFree(ret->value);
|
||||||
free(ret);
|
free(ret);
|
||||||
@ -679,12 +675,8 @@ xmlRpcContextPtr xmlRpcContextNew(const char *uri)
|
|||||||
void xmlRpcContextFree(xmlRpcContextPtr context)
|
void xmlRpcContextFree(xmlRpcContextPtr context)
|
||||||
{
|
{
|
||||||
if (context) {
|
if (context) {
|
||||||
if (context->uri)
|
free(context->uri);
|
||||||
free(context->uri);
|
free(context->faultMessage);
|
||||||
|
|
||||||
if (context->faultMessage)
|
|
||||||
free(context->faultMessage);
|
|
||||||
|
|
||||||
free(context);
|
free(context);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -635,9 +635,7 @@ xenStoreLookupByName(virConnectPtr conn, const char *name)
|
|||||||
ret->id = id;
|
ret->id = id;
|
||||||
|
|
||||||
done:
|
done:
|
||||||
if (xenddomain != NULL)
|
|
||||||
free(xenddomain);
|
free(xenddomain);
|
||||||
if (idlist != NULL)
|
|
||||||
free(idlist);
|
free(idlist);
|
||||||
|
|
||||||
return(ret);
|
return(ret);
|
||||||
|
@ -83,8 +83,7 @@ virtTestRun(const char *title, int nloops, int (*body)(const void *data), const
|
|||||||
else
|
else
|
||||||
fprintf(stderr, "%-50s ... FAILED\n", title);
|
fprintf(stderr, "%-50s ... FAILED\n", title);
|
||||||
|
|
||||||
if (ts)
|
free(ts);
|
||||||
free(ts);
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -62,8 +62,7 @@ static int testCompareFiles(const char *hostmachine,
|
|||||||
|
|
||||||
fail:
|
fail:
|
||||||
|
|
||||||
if (actualxml)
|
free(actualxml);
|
||||||
free(actualxml);
|
|
||||||
if (fp1)
|
if (fp1)
|
||||||
fclose(fp1);
|
fclose(fp1);
|
||||||
if (fp2)
|
if (fp2)
|
||||||
|
@ -153,8 +153,7 @@ static int testCompareFormatXML(const char *xmcfg_rel, const char *xml_rel,
|
|||||||
fail:
|
fail:
|
||||||
if (conf)
|
if (conf)
|
||||||
virConfFree(conf);
|
virConfFree(conf);
|
||||||
if (gotxml)
|
free(gotxml);
|
||||||
free(gotxml);
|
|
||||||
|
|
||||||
if (conn) {
|
if (conn) {
|
||||||
conn->privateData = old_priv;
|
conn->privateData = old_priv;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user