mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 21:55:25 +00:00
virJSONParserInsertValue: Take double pointer for @value
The function calls virJSONValueObjectAppend/virJSONValueArrayAppend, so by taking a double pointer we can drop the pointer clearing from callers. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
6b12e220b0
commit
8298a5bd69
@ -1549,10 +1549,10 @@ virJSONValueCopy(const virJSONValue *in)
|
||||
#if WITH_YAJL
|
||||
static int
|
||||
virJSONParserInsertValue(virJSONParserPtr parser,
|
||||
virJSONValuePtr value)
|
||||
virJSONValuePtr *value)
|
||||
{
|
||||
if (!parser->head) {
|
||||
parser->head = value;
|
||||
parser->head = g_steal_pointer(value);
|
||||
} else {
|
||||
virJSONParserStatePtr state;
|
||||
if (!parser->nstate) {
|
||||
@ -1571,7 +1571,7 @@ virJSONParserInsertValue(virJSONParserPtr parser,
|
||||
|
||||
if (virJSONValueObjectAppend(state->value,
|
||||
state->key,
|
||||
&value) < 0)
|
||||
value) < 0)
|
||||
return -1;
|
||||
|
||||
VIR_FREE(state->key);
|
||||
@ -1584,7 +1584,7 @@ virJSONParserInsertValue(virJSONParserPtr parser,
|
||||
}
|
||||
|
||||
if (virJSONValueArrayAppend(state->value,
|
||||
&value) < 0)
|
||||
value) < 0)
|
||||
return -1;
|
||||
} break;
|
||||
|
||||
@ -1606,9 +1606,8 @@ virJSONParserHandleNull(void *ctx)
|
||||
|
||||
VIR_DEBUG("parser=%p", parser);
|
||||
|
||||
if (virJSONParserInsertValue(parser, value) < 0)
|
||||
if (virJSONParserInsertValue(parser, &value) < 0)
|
||||
return 0;
|
||||
value = NULL;
|
||||
|
||||
return 1;
|
||||
}
|
||||
@ -1623,9 +1622,8 @@ virJSONParserHandleBoolean(void *ctx,
|
||||
|
||||
VIR_DEBUG("parser=%p boolean=%d", parser, boolean_);
|
||||
|
||||
if (virJSONParserInsertValue(parser, value) < 0)
|
||||
if (virJSONParserInsertValue(parser, &value) < 0)
|
||||
return 0;
|
||||
value = NULL;
|
||||
|
||||
return 1;
|
||||
}
|
||||
@ -1641,9 +1639,8 @@ virJSONParserHandleNumber(void *ctx,
|
||||
|
||||
VIR_DEBUG("parser=%p str=%s", parser, value->data.number);
|
||||
|
||||
if (virJSONParserInsertValue(parser, value) < 0)
|
||||
if (virJSONParserInsertValue(parser, &value) < 0)
|
||||
return 0;
|
||||
value = NULL;
|
||||
|
||||
return 1;
|
||||
}
|
||||
@ -1660,9 +1657,8 @@ virJSONParserHandleString(void *ctx,
|
||||
|
||||
VIR_DEBUG("parser=%p str=%p", parser, (const char *)stringVal);
|
||||
|
||||
if (virJSONParserInsertValue(parser, value) < 0)
|
||||
if (virJSONParserInsertValue(parser, &value) < 0)
|
||||
return 0;
|
||||
value = NULL;
|
||||
|
||||
return 1;
|
||||
}
|
||||
@ -1698,9 +1694,8 @@ virJSONParserHandleStartMap(void *ctx)
|
||||
|
||||
VIR_DEBUG("parser=%p", parser);
|
||||
|
||||
if (virJSONParserInsertValue(parser, value) < 0)
|
||||
if (virJSONParserInsertValue(parser, &value) < 0)
|
||||
return 0;
|
||||
value = NULL;
|
||||
|
||||
if (VIR_REALLOC_N(parser->state,
|
||||
parser->nstate + 1) < 0) {
|
||||
@ -1747,9 +1742,8 @@ virJSONParserHandleStartArray(void *ctx)
|
||||
|
||||
VIR_DEBUG("parser=%p", parser);
|
||||
|
||||
if (virJSONParserInsertValue(parser, value) < 0)
|
||||
if (virJSONParserInsertValue(parser, &value) < 0)
|
||||
return 0;
|
||||
value = NULL;
|
||||
|
||||
if (VIR_REALLOC_N(parser->state,
|
||||
parser->nstate + 1) < 0)
|
||||
|
Loading…
Reference in New Issue
Block a user