That wrapper is going to be used to safely log a json_object, as libxl__json_object_to_json return NULL on error. In the error case, JSON() will return an invalid json string.
Signed-off-by: Anthony PERARD <anthony.per...@citrix.com> Acked-by: Ian Jackson <ian.jack...@eu.citrix.com> --- Notes: v8: Acked v7: new patch There are no user yet because the first users is going to be in "libxl_qmp: Implementation of libxl__ev_qmp_*" which is already a huge patch, that 3 lines might get lost. tools/libxl/libxl_internal.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h index aa9059ffec..16e6eb6c5e 100644 --- a/tools/libxl/libxl_internal.h +++ b/tools/libxl/libxl_internal.h @@ -2046,6 +2046,9 @@ _hidden libxl__json_object *libxl__json_parse(libxl__gc *gc_opt, const char *s); _hidden char *libxl__json_object_to_json(libxl__gc *gc, const libxl__json_object *args); +/* Always return a valid string, but invalid json on error. */ +#define JSON(o) \ + (libxl__json_object_to_json(gc, (o)) ? : "<invalid-json-object>") /* Based on /local/domain/$domid/dm-version xenstore key * default is qemu xen traditional */ -- Anthony PERARD _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel