]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
util: json: Remove virJSONValueNewArrayFromBitmap
authorPeter Krempa <pkrempa@redhat.com>
Thu, 8 Apr 2021 11:42:30 +0000 (13:42 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 12 Apr 2021 12:59:29 +0000 (14:59 +0200)
The function is used only inside of the file. We can open-code it and
remove it as it's not very useful.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
src/libvirt_private.syms
src/util/virjson.c
src/util/virjson.h

index 0801728a74347cca4420a3094f13e8c9c1713548..fd2d4462a68b8966937ba4e0e3abbb903f5aebe4 100644 (file)
@@ -2492,7 +2492,6 @@ virJSONValueIsArray;
 virJSONValueIsNull;
 virJSONValueIsObject;
 virJSONValueNewArray;
-virJSONValueNewArrayFromBitmap;
 virJSONValueNewBoolean;
 virJSONValueNewNull;
 virJSONValueNewNumberDouble;
index 746386c6192ce6b9dcb81f0bd35dd8a5fd6d8d78..0eff467ec5f62b4c14bca20922336cdbd1e08102 100644 (file)
@@ -31,6 +31,7 @@
 #include "virutil.h"
 #include "virbuffer.h"
 #include "virenum.h"
+#include "virbitmap.h"
 
 #if WITH_YAJL
 # include <yajl/yajl_gen.h>
@@ -304,7 +305,8 @@ virJSONValueObjectAddVArgs(virJSONValuePtr obj,
         case 'M':
         case 'm': {
             virBitmapPtr map = va_arg(args, virBitmapPtr);
-            g_autoptr(virJSONValue) jsonMap = NULL;
+            g_autoptr(virJSONValue) jsonMap = virJSONValueNewArray();
+            ssize_t pos = -1;
 
             if (!map) {
                 if (type == 'M')
@@ -316,8 +318,12 @@ virJSONValueObjectAddVArgs(virJSONValuePtr obj,
                 return -1;
             }
 
-            if (!(jsonMap = virJSONValueNewArrayFromBitmap(map)))
-                return -1;
+            while ((pos = virBitmapNextSetBit(map, pos)) > -1) {
+                g_autoptr(virJSONValue) newelem = virJSONValueNewNumberLong(pos);
+
+                if (virJSONValueArrayAppend(jsonMap, &newelem) < 0)
+                    return -1;
+            }
 
             if ((rc = virJSONValueObjectAppend(obj, key, &jsonMap)) < 0)
                 return -1;
@@ -1174,26 +1180,6 @@ virJSONValueGetBoolean(virJSONValuePtr val,
 }
 
 
-virJSONValuePtr
-virJSONValueNewArrayFromBitmap(virBitmapPtr bitmap)
-{
-    g_autoptr(virJSONValue) ret = virJSONValueNewArray();
-    ssize_t pos = -1;
-
-    if (!bitmap)
-        return g_steal_pointer(&ret);
-
-    while ((pos = virBitmapNextSetBit(bitmap, pos)) > -1) {
-        g_autoptr(virJSONValue) newelem = virJSONValueNewNumberLong(pos);
-
-        if (virJSONValueArrayAppend(ret, &newelem) < 0)
-            return NULL;
-    }
-
-    return g_steal_pointer(&ret);
-}
-
-
 bool
 virJSONValueIsNull(virJSONValuePtr val)
 {
index 1f15b232330e152c6c2a3cea36076c3eb184a6ba..3197f81f866dd3dfb71a230bab603fdef7537542 100644 (file)
@@ -23,7 +23,6 @@
 #pragma once
 
 #include "internal.h"
-#include "virbitmap.h"
 #include "virbuffer.h"
 
 #include <stdarg.h>
@@ -67,7 +66,6 @@ virJSONValuePtr virJSONValueNewBoolean(int boolean);
 virJSONValuePtr virJSONValueNewNull(void);
 virJSONValuePtr virJSONValueNewArray(void);
 virJSONValuePtr virJSONValueNewObject(void);
-virJSONValuePtr virJSONValueNewArrayFromBitmap(virBitmapPtr bitmap);
 
 int virJSONValueObjectAppend(virJSONValuePtr object,
                              const char *key,