
On Thu, Oct 7, 2021 at 6:43 PM Ján Tomko <jtomko@redhat.com> wrote:
On a Thursday in 2021, Peter Krempa wrote:
In many cases we use a signed value, but use the sign to note that it was not assigned. For converting to JSON objects it will be handy to have possibility to do this automatically.
Signed-off-by: Peter Krempa <pkrempa@redhat.com> --- src/util/virjson.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/util/virjson.c b/src/util/virjson.c index 9adcea4fff..70ea71b505 100644 --- a/src/util/virjson.c +++ b/src/util/virjson.c @@ -115,6 +115,7 @@ virJSONValueGetType(const virJSONValue *value) * * i: signed integer value * j: signed integer value, error if negative + * k: signed integer value, omitted if negative * z: signed integer value, omitted if zero * y: signed integer value, omitted if zero, error if negative * @@ -189,6 +190,7 @@ virJSONValueObjectAddVArgs(virJSONValue *obj,
case 'z': case 'y': + case 'k': case 'j': case 'i': { int val = va_arg(args, int); @@ -200,7 +202,10 @@ virJSONValueObjectAddVArgs(virJSONValue *obj, return -1; }
- if (!val && (type == 'z' || type == 'y')) + if (val == 0 && (type == 'z' || type == 'y')) + continue; +
Please split out this cosmetic style change.
Please don't.
+ if (val < 0 && type == 'k')
continue;
k.
I mean Reviewed-by: Ján Tomko <jtomko@redhat.com>
Jano
Kristina