[libvirt] [PATCHv3 03/13] Switch from yajl to Jansson

Ján Tomko jtomko at redhat.com
Tue May 15 12:45:05 UTC 2018


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 at redhat.com>
>---
> 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20180515/c63c044d/attachment-0001.sig>


More information about the libvir-list mailing list