Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
---
block.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/block.c b/block.c
index af1014f..ca15e93 100644
--- a/block.c
+++ b/block.c
@@ -1200,9 +1200,14 @@ static QDict *parse_json_filename(const char *filename, Error **errp)
ret = strstart(filename, "json:", &filename);
assert(ret);
- options_obj = qobject_from_json(filename, NULL);
+ options_obj = qobject_from_json(filename, errp);
if (!options_obj) {
- error_setg(errp, "Could not parse the JSON options");
+ /* Work around qobject_from_json() lossage TODO fix that */
+ if (errp && !*errp) {
+ error_setg(errp, "Could not parse the JSON options");
+ return NULL;
+ }
+ error_prepend(errp, "Could not parse the JSON options: ");
return NULL;
}
--
2.7.4