memset(&msg, 0, sizeof(msg));
- if (!(cmdstr = virJSONValueToString(cmd))) {
+ if (!(cmdstr = virJSONValueToString(cmd, false))) {
virReportOOMError();
goto cleanup;
}
{
if (virJSONValueObjectHasKey(reply, "error")) {
virJSONValuePtr error = virJSONValueObjectGet(reply, "error");
- char *cmdstr = virJSONValueToString(cmd);
- char *replystr = virJSONValueToString(reply);
+ char *cmdstr = virJSONValueToString(cmd, false);
+ char *replystr = virJSONValueToString(reply, false);
/* Log the full JSON formatted command & error */
VIR_DEBUG("unable to execute QEMU command %s: %s",
VIR_FREE(replystr);
return -1;
} else if (!virJSONValueObjectHasKey(reply, "return")) {
- char *cmdstr = virJSONValueToString(cmd);
- char *replystr = virJSONValueToString(reply);
+ char *cmdstr = virJSONValueToString(cmd, false);
+ char *replystr = virJSONValueToString(reply, false);
VIR_DEBUG("Neither 'return' nor 'error' is set in the JSON reply %s: %s",
cmdstr, replystr);
}
}
- if (!(cmdstr = virJSONValueToString(cmd))) {
+ if (!(cmdstr = virJSONValueToString(cmd, false))) {
virReportOOMError();
goto cleanup;
}
{
if (virJSONValueObjectHasKey(reply, "error")) {
virJSONValuePtr error = virJSONValueObjectGet(reply, "error");
- char *cmdstr = virJSONValueToString(cmd);
- char *replystr = virJSONValueToString(reply);
+ char *cmdstr = virJSONValueToString(cmd, false);
+ char *replystr = virJSONValueToString(reply, false);
/* Log the full JSON formatted command & error */
VIR_DEBUG("unable to execute QEMU command %s: %s",
VIR_FREE(replystr);
return -1;
} else if (!virJSONValueObjectHasKey(reply, "return")) {
- char *cmdstr = virJSONValueToString(cmd);
- char *replystr = virJSONValueToString(reply);
+ char *cmdstr = virJSONValueToString(cmd, false);
+ char *replystr = virJSONValueToString(reply, false);
VIR_DEBUG("Neither 'return' nor 'error' is set in the JSON reply %s: %s",
cmdstr, replystr);
if (qemuMonitorJSONCommand(mon, cmd, &reply) < 0)
goto cleanup;
- if (!(*reply_str = virJSONValueToString(reply)))
+ if (!(*reply_str = virJSONValueToString(reply, false)))
goto cleanup;
}
return 0;
}
-char *virJSONValueToString(virJSONValuePtr object)
+char *virJSONValueToString(virJSONValuePtr object,
+ bool pretty)
{
yajl_gen g;
const unsigned char *str;
char *ret = NULL;
yajl_size_t len;
# ifndef HAVE_YAJL2
- yajl_gen_config conf = { 0, " " }; /* Turns off pretty printing since QEMU can't cope */
+ yajl_gen_config conf = { pretty ? 1 : 0, pretty ? " " : " "};
# endif
VIR_DEBUG("object=%p", object);
# ifdef HAVE_YAJL2
g = yajl_gen_alloc(NULL);
if (g) {
- yajl_gen_config(g, yajl_gen_beautify, 0);
- yajl_gen_config(g, yajl_gen_indent_string, " ");
+ yajl_gen_config(g, yajl_gen_beautify, pretty ? 1 : 0);
+ yajl_gen_config(g, yajl_gen_indent_string, pretty ? " " : " ");
yajl_gen_config(g, yajl_gen_validate_utf8, 1);
}
# else
int virJSONValueObjectAppendNull(virJSONValuePtr object, const char *key);
virJSONValuePtr virJSONValueFromString(const char *jsonstring);
-char *virJSONValueToString(virJSONValuePtr object);
+char *virJSONValueToString(virJSONValuePtr object,
+ bool pretty);
#endif /* __VIR_JSON_H_ */