From 97be85dcc315c0a52b4c23da72f28d8036a3b8ef Mon Sep 17 00:00:00 2001 From: Marc Hartmayer Date: Tue, 17 Jul 2018 14:02:32 +0200 Subject: [PATCH] virTypedParamsSerialize: set remote_params_len at the end Update the length @remote_params_len only if the related @remote_params_val has also been set. Signed-off-by: Marc Hartmayer Reviewed-by: John Ferlan --- src/util/virtypedparam.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/util/virtypedparam.c b/src/util/virtypedparam.c index cfaa0dd955..c50d29eb55 100644 --- a/src/util/virtypedparam.c +++ b/src/util/virtypedparam.c @@ -1501,8 +1501,8 @@ virTypedParamsSerialize(virTypedParameterPtr params, size_t j; int rv = -1; virTypedParameterRemotePtr params_val; + int params_len = nparams; - *remote_params_len = nparams; if (VIR_ALLOC_N(params_val, nparams) < 0) goto cleanup; @@ -1515,7 +1515,7 @@ virTypedParamsSerialize(virTypedParameterPtr params, if (!param->type || (!(flags & VIR_TYPED_PARAM_STRING_OKAY) && param->type == VIR_TYPED_PARAM_STRING)) { - --*remote_params_len; + --params_len; continue; } @@ -1556,6 +1556,7 @@ virTypedParamsSerialize(virTypedParameterPtr params, } *remote_params_val = params_val; + *remote_params_len = params_len; params_val = NULL; rv = 0;