提交 e9153cc6 编写于 作者: P Peter Krempa

util: json: Convert virJSONValueNewObject() to g_new0

Make it obvious that the function always returns a valid pointer and fix
all callers.
Signed-off-by: NPeter Krempa <pkrempa@redhat.com>
Reviewed-by: NDaniel Henrique Barboza <danielhb413@gmail.com>
上级 084c04b5
...@@ -119,9 +119,6 @@ virJSONValuePtr remoteAdmClientPreExecRestart(virNetServerClientPtr client G_GNU ...@@ -119,9 +119,6 @@ virJSONValuePtr remoteAdmClientPreExecRestart(virNetServerClientPtr client G_GNU
{ {
virJSONValuePtr object = virJSONValueNewObject(); virJSONValuePtr object = virJSONValueNewObject();
if (!object)
return NULL;
/* No content to add at this time - just need empty object */ /* No content to add at this time - just need empty object */
return object; return object;
......
...@@ -774,9 +774,6 @@ virLockDaemonClientPreExecRestart(virNetServerClientPtr client G_GNUC_UNUSED, ...@@ -774,9 +774,6 @@ virLockDaemonClientPreExecRestart(virNetServerClientPtr client G_GNUC_UNUSED,
virJSONValuePtr object = virJSONValueNewObject(); virJSONValuePtr object = virJSONValueNewObject();
char uuidstr[VIR_UUID_STRING_BUFLEN]; char uuidstr[VIR_UUID_STRING_BUFLEN];
if (!object)
return NULL;
if (virJSONValueObjectAppendBoolean(object, "restricted", priv->restricted) < 0) { if (virJSONValueObjectAppendBoolean(object, "restricted", priv->restricted) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("Cannot set restricted data in JSON document")); _("Cannot set restricted data in JSON document"));
...@@ -923,16 +920,13 @@ virLockDaemonPreExecRestart(const char *state_file, ...@@ -923,16 +920,13 @@ virLockDaemonPreExecRestart(const char *state_file,
virJSONValuePtr child; virJSONValuePtr child;
char *state = NULL; char *state = NULL;
int ret = -1; int ret = -1;
virJSONValuePtr object; virJSONValuePtr object = virJSONValueNewObject();
char *magic; char *magic;
virHashKeyValuePairPtr pairs = NULL, tmp; virHashKeyValuePairPtr pairs = NULL, tmp;
virJSONValuePtr lockspaces; virJSONValuePtr lockspaces;
VIR_DEBUG("Running pre-restart exec"); VIR_DEBUG("Running pre-restart exec");
if (!(object = virJSONValueNewObject()))
goto cleanup;
if (!(child = virNetDaemonPreExecRestart(dmn))) if (!(child = virNetDaemonPreExecRestart(dmn)))
goto cleanup; goto cleanup;
......
...@@ -597,9 +597,6 @@ virLogDaemonClientPreExecRestart(virNetServerClientPtr client G_GNUC_UNUSED, ...@@ -597,9 +597,6 @@ virLogDaemonClientPreExecRestart(virNetServerClientPtr client G_GNUC_UNUSED,
{ {
virJSONValuePtr object = virJSONValueNewObject(); virJSONValuePtr object = virJSONValueNewObject();
if (!object)
return NULL;
return object; return object;
} }
...@@ -718,15 +715,12 @@ virLogDaemonPreExecRestart(const char *state_file, ...@@ -718,15 +715,12 @@ virLogDaemonPreExecRestart(const char *state_file,
virJSONValuePtr child; virJSONValuePtr child;
char *state = NULL; char *state = NULL;
int ret = -1; int ret = -1;
virJSONValuePtr object; virJSONValuePtr object = virJSONValueNewObject();
char *magic; char *magic;
virHashKeyValuePairPtr pairs = NULL; virHashKeyValuePairPtr pairs = NULL;
VIR_DEBUG("Running pre-restart exec"); VIR_DEBUG("Running pre-restart exec");
if (!(object = virJSONValueNewObject()))
goto cleanup;
if (!(child = virNetDaemonPreExecRestart(dmn))) if (!(child = virNetDaemonPreExecRestart(dmn)))
goto cleanup; goto cleanup;
......
...@@ -615,9 +615,6 @@ virLogHandlerPreExecRestart(virLogHandlerPtr handler) ...@@ -615,9 +615,6 @@ virLogHandlerPreExecRestart(virLogHandlerPtr handler)
size_t i; size_t i;
char domuuid[VIR_UUID_STRING_BUFLEN]; char domuuid[VIR_UUID_STRING_BUFLEN];
if (!ret)
return NULL;
files = virJSONValueNewArray(); files = virJSONValueNewArray();
if (virJSONValueObjectAppend(ret, "files", files) < 0) { if (virJSONValueObjectAppend(ret, "files", files) < 0) {
...@@ -627,8 +624,6 @@ virLogHandlerPreExecRestart(virLogHandlerPtr handler) ...@@ -627,8 +624,6 @@ virLogHandlerPreExecRestart(virLogHandlerPtr handler)
for (i = 0; i < handler->nfiles; i++) { for (i = 0; i < handler->nfiles; i++) {
virJSONValuePtr file = virJSONValueNewObject(); virJSONValuePtr file = virJSONValueNewObject();
if (!file)
goto error;
if (virJSONValueArrayAppend(files, file) < 0) { if (virJSONValueArrayAppend(files, file) < 0) {
virJSONValueFree(file); virJSONValueFree(file);
......
...@@ -1166,15 +1166,12 @@ static virJSONValuePtr G_GNUC_NULL_TERMINATED ...@@ -1166,15 +1166,12 @@ static virJSONValuePtr G_GNUC_NULL_TERMINATED
qemuAgentMakeCommand(const char *cmdname, qemuAgentMakeCommand(const char *cmdname,
...) ...)
{ {
virJSONValuePtr obj; virJSONValuePtr obj = virJSONValueNewObject();
virJSONValuePtr jargs = NULL; virJSONValuePtr jargs = NULL;
va_list args; va_list args;
va_start(args, cmdname); va_start(args, cmdname);
if (!(obj = virJSONValueNewObject()))
goto error;
if (virJSONValueObjectAppendString(obj, "execute", cmdname) < 0) if (virJSONValueObjectAppendString(obj, "execute", cmdname) < 0)
goto error; goto error;
...@@ -1544,8 +1541,7 @@ qemuAgentSetVCPUsCommand(qemuAgentPtr mon, ...@@ -1544,8 +1541,7 @@ qemuAgentSetVCPUsCommand(qemuAgentPtr mon,
(*nmodified)++; (*nmodified)++;
/* create single cpu object */ /* create single cpu object */
if (!(cpu = virJSONValueNewObject())) cpu = virJSONValueNewObject();
goto cleanup;
if (virJSONValueObjectAppendNumberInt(cpu, "logical-id", in->id) < 0) if (virJSONValueObjectAppendNumberInt(cpu, "logical-id", in->id) < 0)
goto cleanup; goto cleanup;
......
...@@ -3442,8 +3442,7 @@ qemuBuildMemoryBackendProps(virJSONValuePtr *backendProps, ...@@ -3442,8 +3442,7 @@ qemuBuildMemoryBackendProps(virJSONValuePtr *backendProps,
return -1; return -1;
} }
if (!(props = virJSONValueNewObject())) props = virJSONValueNewObject();
return -1;
if (def->mem.source == VIR_DOMAIN_MEMORY_SOURCE_MEMFD) { if (def->mem.source == VIR_DOMAIN_MEMORY_SOURCE_MEMFD) {
backendType = "memory-backend-memfd"; backendType = "memory-backend-memfd";
......
...@@ -672,12 +672,9 @@ qemuFirmwareInterfaceFormat(virJSONValuePtr doc, ...@@ -672,12 +672,9 @@ qemuFirmwareInterfaceFormat(virJSONValuePtr doc,
static virJSONValuePtr static virJSONValuePtr
qemuFirmwareFlashFileFormat(qemuFirmwareFlashFile flash) qemuFirmwareFlashFileFormat(qemuFirmwareFlashFile flash)
{ {
g_autoptr(virJSONValue) json = NULL; g_autoptr(virJSONValue) json = virJSONValueNewObject();
virJSONValuePtr ret; virJSONValuePtr ret;
if (!(json = virJSONValueNewObject()))
return NULL;
if (virJSONValueObjectAppendString(json, if (virJSONValueObjectAppendString(json,
"filename", "filename",
flash.filename) < 0) flash.filename) < 0)
...@@ -754,10 +751,7 @@ static int ...@@ -754,10 +751,7 @@ static int
qemuFirmwareMappingFormat(virJSONValuePtr doc, qemuFirmwareMappingFormat(virJSONValuePtr doc,
qemuFirmwarePtr fw) qemuFirmwarePtr fw)
{ {
g_autoptr(virJSONValue) mapping = NULL; g_autoptr(virJSONValue) mapping = virJSONValueNewObject();
if (!(mapping = virJSONValueNewObject()))
return -1;
if (virJSONValueObjectAppendString(mapping, if (virJSONValueObjectAppendString(mapping,
"device", "device",
...@@ -802,13 +796,10 @@ qemuFirmwareTargetFormat(virJSONValuePtr doc, ...@@ -802,13 +796,10 @@ qemuFirmwareTargetFormat(virJSONValuePtr doc,
for (i = 0; i < fw->ntargets; i++) { for (i = 0; i < fw->ntargets; i++) {
qemuFirmwareTargetPtr t = fw->targets[i]; qemuFirmwareTargetPtr t = fw->targets[i];
g_autoptr(virJSONValue) target = NULL; g_autoptr(virJSONValue) target = virJSONValueNewObject();
g_autoptr(virJSONValue) machines = NULL; g_autoptr(virJSONValue) machines = NULL;
size_t j; size_t j;
if (!(target = virJSONValueNewObject()))
return -1;
if (virJSONValueObjectAppendString(target, if (virJSONValueObjectAppendString(target,
"architecture", "architecture",
virQEMUCapsArchToString(t->architecture)) < 0) virQEMUCapsArchToString(t->architecture)) < 0)
...@@ -869,14 +860,11 @@ qemuFirmwareFeatureFormat(virJSONValuePtr doc, ...@@ -869,14 +860,11 @@ qemuFirmwareFeatureFormat(virJSONValuePtr doc,
char * char *
qemuFirmwareFormat(qemuFirmwarePtr fw) qemuFirmwareFormat(qemuFirmwarePtr fw)
{ {
g_autoptr(virJSONValue) doc = NULL; g_autoptr(virJSONValue) doc = virJSONValueNewObject();
if (!fw) if (!fw)
return NULL; return NULL;
if (!(doc = virJSONValueNewObject()))
return NULL;
if (qemuFirmwareInterfaceFormat(doc, fw) < 0) if (qemuFirmwareInterfaceFormat(doc, fw) < 0)
return NULL; return NULL;
......
...@@ -729,15 +729,12 @@ qemuMigrationParamsFromJSON(virJSONValuePtr params) ...@@ -729,15 +729,12 @@ qemuMigrationParamsFromJSON(virJSONValuePtr params)
virJSONValuePtr virJSONValuePtr
qemuMigrationParamsToJSON(qemuMigrationParamsPtr migParams) qemuMigrationParamsToJSON(qemuMigrationParamsPtr migParams)
{ {
virJSONValuePtr params = NULL; virJSONValuePtr params = virJSONValueNewObject();
qemuMigrationParamValuePtr pv; qemuMigrationParamValuePtr pv;
const char *name; const char *name;
size_t i; size_t i;
int rc; int rc;
if (!(params = virJSONValueNewObject()))
return NULL;
for (i = 0; i < QEMU_MIGRATION_PARAM_LAST; i++) { for (i = 0; i < QEMU_MIGRATION_PARAM_LAST; i++) {
name = qemuMigrationParamTypeToString(i); name = qemuMigrationParamTypeToString(i);
pv = &migParams->params[i]; pv = &migParams->params[i];
...@@ -797,8 +794,7 @@ qemuMigrationCapsToJSON(virBitmapPtr caps, ...@@ -797,8 +794,7 @@ qemuMigrationCapsToJSON(virBitmapPtr caps,
ignore_value(virBitmapGetBit(states, bit, &state)); ignore_value(virBitmapGetBit(states, bit, &state));
if (!(cap = virJSONValueNewObject())) cap = virJSONValueNewObject();
goto error;
name = qemuMigrationCapabilityTypeToString(bit); name = qemuMigrationCapabilityTypeToString(bit);
if (virJSONValueObjectAppendString(cap, "capability", name) < 0) if (virJSONValueObjectAppendString(cap, "capability", name) < 0)
......
...@@ -690,15 +690,12 @@ qemuMonitorJSONParseKeywords(const char *str, ...@@ -690,15 +690,12 @@ qemuMonitorJSONParseKeywords(const char *str,
static virJSONValuePtr static virJSONValuePtr
qemuMonitorJSONKeywordStringToJSON(const char *str, const char *firstkeyword) qemuMonitorJSONKeywordStringToJSON(const char *str, const char *firstkeyword)
{ {
virJSONValuePtr ret = NULL; virJSONValuePtr ret = virJSONValueNewObject();
char **keywords = NULL; char **keywords = NULL;
char **values = NULL; char **values = NULL;
int nkeywords = 0; int nkeywords = 0;
size_t i; size_t i;
if (!(ret = virJSONValueNewObject()))
return NULL;
if (qemuMonitorJSONParseKeywords(str, &keywords, &values, &nkeywords, 1) < 0) if (qemuMonitorJSONParseKeywords(str, &keywords, &values, &nkeywords, 1) < 0)
goto error; goto error;
...@@ -3444,12 +3441,9 @@ qemuMonitorJSONSetMigrationParams(qemuMonitorPtr mon, ...@@ -3444,12 +3441,9 @@ qemuMonitorJSONSetMigrationParams(qemuMonitorPtr mon,
virJSONValuePtr params) virJSONValuePtr params)
{ {
int ret = -1; int ret = -1;
virJSONValuePtr cmd = NULL; virJSONValuePtr cmd = virJSONValueNewObject();
virJSONValuePtr reply = NULL; virJSONValuePtr reply = NULL;
if (!(cmd = virJSONValueNewObject()))
goto cleanup;
if (virJSONValueObjectAppendString(cmd, "execute", if (virJSONValueObjectAppendString(cmd, "execute",
"migrate-set-parameters") < 0) "migrate-set-parameters") < 0)
goto cleanup; goto cleanup;
...@@ -4823,8 +4817,7 @@ int qemuMonitorJSONSendKey(qemuMonitorPtr mon, ...@@ -4823,8 +4817,7 @@ int qemuMonitorJSONSendKey(qemuMonitorPtr mon,
} }
/* create single key object */ /* create single key object */
if (!(key = virJSONValueNewObject())) key = virJSONValueNewObject();
goto cleanup;
/* Union KeyValue has two types, use the generic one */ /* Union KeyValue has two types, use the generic one */
if (virJSONValueObjectAppendString(key, "type", "number") < 0) if (virJSONValueObjectAppendString(key, "type", "number") < 0)
...@@ -5817,19 +5810,15 @@ static virJSONValuePtr ...@@ -5817,19 +5810,15 @@ static virJSONValuePtr
qemuMonitorJSONMakeCPUModel(virCPUDefPtr cpu, qemuMonitorJSONMakeCPUModel(virCPUDefPtr cpu,
bool migratable) bool migratable)
{ {
virJSONValuePtr model = NULL; virJSONValuePtr model = virJSONValueNewObject();
virJSONValuePtr props = NULL; virJSONValuePtr props = NULL;
size_t i; size_t i;
if (!(model = virJSONValueNewObject()))
goto error;
if (virJSONValueObjectAppendString(model, "name", cpu->model) < 0) if (virJSONValueObjectAppendString(model, "name", cpu->model) < 0)
goto error; goto error;
if (cpu->nfeatures || !migratable) { if (cpu->nfeatures || !migratable) {
if (!(props = virJSONValueNewObject())) props = virJSONValueNewObject();
goto error;
for (i = 0; i < cpu->nfeatures; i++) { for (i = 0; i < cpu->nfeatures; i++) {
char *name = cpu->features[i].name; char *name = cpu->features[i].name;
...@@ -7382,8 +7371,8 @@ qemuMonitorJSONAttachCharDevCommand(const char *chrID, ...@@ -7382,8 +7371,8 @@ qemuMonitorJSONAttachCharDevCommand(const char *chrID,
const virDomainChrSourceDef *chr) const virDomainChrSourceDef *chr)
{ {
virJSONValuePtr ret = NULL; virJSONValuePtr ret = NULL;
virJSONValuePtr backend = NULL; virJSONValuePtr backend = virJSONValueNewObject();
virJSONValuePtr data = NULL; virJSONValuePtr data = virJSONValueNewObject();
virJSONValuePtr addr = NULL; virJSONValuePtr addr = NULL;
const char *backend_type = NULL; const char *backend_type = NULL;
const char *host; const char *host;
...@@ -7391,11 +7380,6 @@ qemuMonitorJSONAttachCharDevCommand(const char *chrID, ...@@ -7391,11 +7380,6 @@ qemuMonitorJSONAttachCharDevCommand(const char *chrID,
char *tlsalias = NULL; char *tlsalias = NULL;
bool telnet; bool telnet;
if (!(backend = virJSONValueNewObject()) ||
!(data = virJSONValueNewObject())) {
goto cleanup;
}
switch ((virDomainChrType)chr->type) { switch ((virDomainChrType)chr->type) {
case VIR_DOMAIN_CHR_TYPE_NULL: case VIR_DOMAIN_CHR_TYPE_NULL:
case VIR_DOMAIN_CHR_TYPE_VC: case VIR_DOMAIN_CHR_TYPE_VC:
......
...@@ -217,8 +217,7 @@ qemuVhostUserFormat(qemuVhostUserPtr vu) ...@@ -217,8 +217,7 @@ qemuVhostUserFormat(qemuVhostUserPtr vu)
if (!vu) if (!vu)
return NULL; return NULL;
if (!(doc = virJSONValueNewObject())) doc = virJSONValueNewObject();
return NULL;
if (virJSONValueObjectAppendString(doc, "type", if (virJSONValueObjectAppendString(doc, "type",
qemuVhostUserTypeTypeToString(vu->type)) < 0) qemuVhostUserTypeTypeToString(vu->type)) < 0)
......
...@@ -382,18 +382,12 @@ virJSONValuePtr ...@@ -382,18 +382,12 @@ virJSONValuePtr
virNetDaemonPreExecRestart(virNetDaemonPtr dmn) virNetDaemonPreExecRestart(virNetDaemonPtr dmn)
{ {
size_t i = 0; size_t i = 0;
virJSONValuePtr object = NULL; virJSONValuePtr object = virJSONValueNewObject();
virJSONValuePtr srvObj = NULL; virJSONValuePtr srvObj = virJSONValueNewObject();
virHashKeyValuePairPtr srvArray = NULL; virHashKeyValuePairPtr srvArray = NULL;
virObjectLock(dmn); virObjectLock(dmn);
if (!(object = virJSONValueNewObject()))
goto error;
if (!(srvObj = virJSONValueNewObject()))
goto error;
if (virJSONValueObjectAppend(object, "servers", srvObj) < 0) { if (virJSONValueObjectAppend(object, "servers", srvObj) < 0) {
virJSONValueFree(srvObj); virJSONValueFree(srvObj);
goto error; goto error;
......
...@@ -546,16 +546,13 @@ virNetServerPtr virNetServerNewPostExecRestart(virJSONValuePtr object, ...@@ -546,16 +546,13 @@ virNetServerPtr virNetServerNewPostExecRestart(virJSONValuePtr object,
virJSONValuePtr virNetServerPreExecRestart(virNetServerPtr srv) virJSONValuePtr virNetServerPreExecRestart(virNetServerPtr srv)
{ {
virJSONValuePtr object; virJSONValuePtr object = virJSONValueNewObject();
virJSONValuePtr clients; virJSONValuePtr clients;
virJSONValuePtr services; virJSONValuePtr services;
size_t i; size_t i;
virObjectLock(srv); virObjectLock(srv);
if (!(object = virJSONValueNewObject()))
goto error;
if (virJSONValueObjectAppendNumberUint(object, "min_workers", if (virJSONValueObjectAppendNumberUint(object, "min_workers",
virThreadPoolGetMinWorkers(srv->workers)) < 0) { virThreadPoolGetMinWorkers(srv->workers)) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
......
...@@ -593,9 +593,6 @@ virJSONValuePtr virNetServerClientPreExecRestart(virNetServerClientPtr client) ...@@ -593,9 +593,6 @@ virJSONValuePtr virNetServerClientPreExecRestart(virNetServerClientPtr client)
virJSONValuePtr object = virJSONValueNewObject(); virJSONValuePtr object = virJSONValueNewObject();
virJSONValuePtr child; virJSONValuePtr child;
if (!object)
return NULL;
virObjectLock(client); virObjectLock(client);
if (virJSONValueObjectAppendNumberUlong(object, "id", if (virJSONValueObjectAppendNumberUlong(object, "id",
......
...@@ -343,9 +343,6 @@ virJSONValuePtr virNetServerServicePreExecRestart(virNetServerServicePtr svc) ...@@ -343,9 +343,6 @@ virJSONValuePtr virNetServerServicePreExecRestart(virNetServerServicePtr svc)
virJSONValuePtr socks; virJSONValuePtr socks;
size_t i; size_t i;
if (!object)
return NULL;
if (virJSONValueObjectAppendNumberInt(object, "auth", svc->auth) < 0) if (virJSONValueObjectAppendNumberInt(object, "auth", svc->auth) < 0)
goto error; goto error;
if (virJSONValueObjectAppendBoolean(object, "readonly", svc->readonly) < 0) if (virJSONValueObjectAppendBoolean(object, "readonly", svc->readonly) < 0)
......
...@@ -1283,8 +1283,7 @@ virJSONValuePtr virNetSocketPreExecRestart(virNetSocketPtr sock) ...@@ -1283,8 +1283,7 @@ virJSONValuePtr virNetSocketPreExecRestart(virNetSocketPtr sock)
goto error; goto error;
} }
if (!(object = virJSONValueNewObject())) object = virJSONValueNewObject();
goto error;
if (virJSONValueObjectAppendNumberInt(object, "fd", sock->fd) < 0) if (virJSONValueObjectAppendNumberInt(object, "fd", sock->fd) < 0)
goto error; goto error;
......
...@@ -362,8 +362,7 @@ virJSONValueObjectCreateVArgs(virJSONValuePtr *obj, ...@@ -362,8 +362,7 @@ virJSONValueObjectCreateVArgs(virJSONValuePtr *obj,
{ {
int ret; int ret;
if (!(*obj = virJSONValueNewObject())) *obj = virJSONValueNewObject();
return -1;
/* free the object on error, or if no value objects were added */ /* free the object on error, or if no value objects were added */
if ((ret = virJSONValueObjectAddVArgs(*obj, args)) <= 0) { if ((ret = virJSONValueObjectAddVArgs(*obj, args)) <= 0) {
...@@ -572,10 +571,7 @@ virJSONValueNewArray(void) ...@@ -572,10 +571,7 @@ virJSONValueNewArray(void)
virJSONValuePtr virJSONValuePtr
virJSONValueNewObject(void) virJSONValueNewObject(void)
{ {
virJSONValuePtr val; virJSONValuePtr val = g_new0(virJSONValue, 1);
if (VIR_ALLOC(val) < 0)
return NULL;
val->type = VIR_JSON_TYPE_OBJECT; val->type = VIR_JSON_TYPE_OBJECT;
...@@ -1503,8 +1499,6 @@ virJSONValueCopy(const virJSONValue *in) ...@@ -1503,8 +1499,6 @@ virJSONValueCopy(const virJSONValue *in)
switch ((virJSONType) in->type) { switch ((virJSONType) in->type) {
case VIR_JSON_TYPE_OBJECT: case VIR_JSON_TYPE_OBJECT:
out = virJSONValueNewObject(); out = virJSONValueNewObject();
if (!out)
return NULL;
for (i = 0; i < in->data.object.npairs; i++) { for (i = 0; i < in->data.object.npairs; i++) {
virJSONValuePtr val = NULL; virJSONValuePtr val = NULL;
if (!(val = virJSONValueCopy(in->data.object.pairs[i].value))) if (!(val = virJSONValueCopy(in->data.object.pairs[i].value)))
...@@ -1724,9 +1718,6 @@ virJSONParserHandleStartMap(void *ctx) ...@@ -1724,9 +1718,6 @@ virJSONParserHandleStartMap(void *ctx)
VIR_DEBUG("parser=%p", parser); VIR_DEBUG("parser=%p", parser);
if (!value)
return 0;
if (virJSONParserInsertValue(parser, value) < 0) { if (virJSONParserInsertValue(parser, value) < 0) {
virJSONValueFree(value); virJSONValueFree(value);
return 0; return 0;
...@@ -2103,8 +2094,7 @@ virJSONValueObjectDeflattenWorker(const char *key, ...@@ -2103,8 +2094,7 @@ virJSONValueObjectDeflattenWorker(const char *key,
} }
if (!(existobj = virJSONValueObjectGet(retobj, tokens[0]))) { if (!(existobj = virJSONValueObjectGet(retobj, tokens[0]))) {
if (!(existobj = virJSONValueNewObject())) existobj = virJSONValueNewObject();
goto cleanup;
if (virJSONValueObjectAppend(retobj, tokens[0], existobj) < 0) if (virJSONValueObjectAppend(retobj, tokens[0], existobj) < 0)
goto cleanup; goto cleanup;
...@@ -2143,10 +2133,7 @@ virJSONValueObjectDeflattenWorker(const char *key, ...@@ -2143,10 +2133,7 @@ virJSONValueObjectDeflattenWorker(const char *key,
virJSONValuePtr virJSONValuePtr
virJSONValueObjectDeflatten(virJSONValuePtr json) virJSONValueObjectDeflatten(virJSONValuePtr json)
{ {
g_autoptr(virJSONValue) deflattened = NULL; g_autoptr(virJSONValue) deflattened = virJSONValueNewObject();
if (!(deflattened = virJSONValueNewObject()))
return NULL;
if (virJSONValueObjectForeachKeyValue(json, if (virJSONValueObjectForeachKeyValue(json,
virJSONValueObjectDeflattenWorker, virJSONValueObjectDeflattenWorker,
......
...@@ -238,11 +238,7 @@ virLeaseNew(virJSONValuePtr *lease_ret, ...@@ -238,11 +238,7 @@ virLeaseNew(virJSONValuePtr *lease_ret,
} }
/* Create new lease */ /* Create new lease */
if (!(lease_new = virJSONValueNewObject())) { lease_new = virJSONValueNewObject();
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("failed to create json"));
return -1;
}
if (iaid && virJSONValueObjectAppendString(lease_new, "iaid", iaid) < 0) if (iaid && virJSONValueObjectAppendString(lease_new, "iaid", iaid) < 0)
return -1; return -1;
......
...@@ -434,9 +434,6 @@ virJSONValuePtr virLockSpacePreExecRestart(virLockSpacePtr lockspace) ...@@ -434,9 +434,6 @@ virJSONValuePtr virLockSpacePreExecRestart(virLockSpacePtr lockspace)
virJSONValuePtr resources; virJSONValuePtr resources;
virHashKeyValuePairPtr pairs = NULL, tmp; virHashKeyValuePairPtr pairs = NULL, tmp;
if (!object)
return NULL;
virMutexLock(&lockspace->lock); virMutexLock(&lockspace->lock);
if (lockspace->dir && if (lockspace->dir &&
...@@ -457,9 +454,6 @@ virJSONValuePtr virLockSpacePreExecRestart(virLockSpacePtr lockspace) ...@@ -457,9 +454,6 @@ virJSONValuePtr virLockSpacePreExecRestart(virLockSpacePtr lockspace)
virJSONValuePtr owners = NULL; virJSONValuePtr owners = NULL;
size_t i; size_t i;
if (!child)
goto error;
if (virJSONValueArrayAppend(resources, child) < 0) { if (virJSONValueArrayAppend(resources, child) < 0) {
virJSONValueFree(child); virJSONValueFree(child);
goto error; goto error;
......
...@@ -200,15 +200,12 @@ virMACMapHashDumper(void *payload, ...@@ -200,15 +200,12 @@ virMACMapHashDumper(void *payload,
const void *name, const void *name,
void *data) void *data)
{ {
virJSONValuePtr obj = NULL; virJSONValuePtr obj = virJSONValueNewObject();
virJSONValuePtr arr = NULL; virJSONValuePtr arr = NULL;
const char **macs = payload; const char **macs = payload;
size_t i; size_t i;
int ret = -1; int ret = -1;
if (!(obj = virJSONValueNewObject()))
goto cleanup;
arr = virJSONValueNewArray(); arr = virJSONValueNewArray();
for (i = 0; macs[i]; i++) { for (i = 0; macs[i]; i++) {
......
...@@ -1874,8 +1874,7 @@ virNetDevSaveNetConfig(const char *linkdev, int vf, ...@@ -1874,8 +1874,7 @@ virNetDevSaveNetConfig(const char *linkdev, int vf,
} }
} }
if (!(configJSON = virJSONValueNewObject())) configJSON = virJSONValueNewObject();
goto cleanup;
/* if there is a PF, it's now in pfDevName, and linkdev is either /* if there is a PF, it's now in pfDevName, and linkdev is either
* the VF's name, or NULL (if the VF isn't bound to a net driver * the VF's name, or NULL (if the VF isn't bound to a net driver
......
...@@ -529,12 +529,8 @@ qemuMonitorTestProcessCommandDefaultValidate(qemuMonitorTestPtr test, ...@@ -529,12 +529,8 @@ qemuMonitorTestProcessCommandDefaultValidate(qemuMonitorTestPtr test,
return -1; return -1;
} }
if (!args) { if (!args)
if (!(emptyargs = virJSONValueNewObject())) args = emptyargs = virJSONValueNewObject();
return -1;
args = emptyargs;
}
if (testQEMUSchemaValidate(args, schemaroot, test->qapischema, &debug) < 0) { if (testQEMUSchemaValidate(args, schemaroot, test->qapischema, &debug) < 0) {
if (qemuMonitorReportError(test, if (qemuMonitorReportError(test,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册