]> xenbits.xensource.com Git - libvirt.git/commitdiff
Revert "Remove virJSONValueNewStringLen"
authorJán Tomko <jtomko@redhat.com>
Mon, 13 Aug 2018 11:39:56 +0000 (13:39 +0200)
committerJán Tomko <jtomko@redhat.com>
Mon, 13 Aug 2018 13:50:01 +0000 (15:50 +0200)
This reverts commit 8f802c6d8659beb9eb3cab96ba2553e251728337.

Jansson cannot parse QEMU's quirky JSON.
Revert back to yajl.

https://bugzilla.redhat.com/show_bug.cgi?id=1614569

Signed-off-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
src/libvirt_private.syms
src/util/virjson.c
src/util/virjson.h

index 496de11168afff9574aa17c72a561e15e7c45d95..f555b1d5b11197e1b6c285e133e83f73f6ac4701 100644 (file)
@@ -2096,6 +2096,7 @@ virJSONValueNewNumberUint;
 virJSONValueNewNumberUlong;
 virJSONValueNewObject;
 virJSONValueNewString;
+virJSONValueNewStringLen;
 virJSONValueObjectAdd;
 virJSONValueObjectAddVArgs;
 virJSONValueObjectAppend;
index 01a387b2f7daf598a240f96900d77812011084ca..80274bc6c5d6e2be74164b6021e594e727ff3eb0 100644 (file)
@@ -420,6 +420,28 @@ virJSONValueNewString(const char *data)
 }
 
 
+virJSONValuePtr
+virJSONValueNewStringLen(const char *data,
+                         size_t length)
+{
+    virJSONValuePtr val;
+
+    if (!data)
+        return virJSONValueNewNull();
+
+    if (VIR_ALLOC(val) < 0)
+        return NULL;
+
+    val->type = VIR_JSON_TYPE_STRING;
+    if (VIR_STRNDUP(val->data.string, data, length) < 0) {
+        VIR_FREE(val);
+        return NULL;
+    }
+
+    return val;
+}
+
+
 static virJSONValuePtr
 virJSONValueNewNumber(const char *data)
 {
index 0d5a7ef753dc2fa73e50f632d6b251becaeb9a1b..75f7f17b443c18732ba1bc880e008734eb8669a3 100644 (file)
@@ -59,6 +59,7 @@ int virJSONValueObjectAddVArgs(virJSONValuePtr obj, va_list args)
 
 
 virJSONValuePtr virJSONValueNewString(const char *data);
+virJSONValuePtr virJSONValueNewStringLen(const char *data, size_t length);
 virJSONValuePtr virJSONValueNewNumberInt(int data);
 virJSONValuePtr virJSONValueNewNumberUint(unsigned int data);
 virJSONValuePtr virJSONValueNewNumberLong(long long data);