Re: [PATCHv3 03/13] Switch from yajl to Jansson

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 11, 2018 at 02:59:04PM +0200, Ján Tomko wrote:
Yajl has not seen much activity upstream recently.
Switch to using Jansson >= 2.7.

All the platforms we target on https://libvirt.org/platforms.html
have a version >= 2.7 listed on the sites below:
https://repology.org/metapackage/jansson/versions
https://build.opensuse.org/package/show/devel:libraries:c_c++/libjansson

Implement virJSONValue{From,To}String using Jansson, delete the yajl
code (and the related virJSONParser structure) and report an error
if someone explicitly specifies --with-yajl.

Also adjust the test data to account for Jansson's different whitespace
usage for empty arrays and tune up the specfile to keep 'make rpm'
working when bisecting.

Signed-off-by: Ján Tomko <jtomko@xxxxxxxxxx>
---
src/util/virjson.c | 211 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 211 insertions(+)


With this change, it should be possible to build with Jansson 2.5 as
well:
diff --git a/src/util/virjson.c b/src/util/virjson.c
index 2f7d624bb3..0d7d368c8a 100644
--- a/src/util/virjson.c
+++ b/src/util/virjson.c
@@ -2056,8 +2056,7 @@ virJSONValueFromJansson(json_t *json)
        break;

    case JSON_STRING:
-        ret = virJSONValueNewStringLen(json_string_value(json),
-                                       json_string_length(json));
+        ret = virJSONValueNewString(json_string_value(json));
        break;

    case JSON_INTEGER:
@@ -2070,7 +2069,7 @@ virJSONValueFromJansson(json_t *json)

    case JSON_TRUE:
    case JSON_FALSE:
-        ret = virJSONValueNewBoolean(json_boolean_value(json));
+        ret = virJSONValueNewBoolean(json_is_true(json));
        break;

    case JSON_NULL:

Jano

Attachment: signature.asc
Description: Digital signature

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux