diff options
author | Daniel P. Berrangé <berrange@redhat.com> | 2019-02-11 18:24:33 +0000 |
---|---|---|
committer | Marc-André Lureau <marcandre.lureau@redhat.com> | 2019-02-12 17:35:56 +0100 |
commit | 0bf62dc89ecb43f2fb0850f938d692024eb8ec52 (patch) | |
tree | ec98267be69ee240a61944e030373c016b3fc255 | |
parent | 5981c3a2326a1eb758bd6b950c1471e19f77d3f0 (diff) |
chardev: ensure qemu_chr_parse_compat reports missing driver error
If no valid char driver was identified the qemu_chr_parse_compat method
was silent, leaving callers no clue what failed.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20190211182442.8542-8-berrange@redhat.com>
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
-rw-r--r-- | chardev/char.c | 2 | ||||
-rw-r--r-- | tests/test-char.c | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/chardev/char.c b/chardev/char.c index ccba36bafb..b99f3692f7 100644 --- a/chardev/char.c +++ b/chardev/char.c @@ -490,6 +490,8 @@ QemuOpts *qemu_chr_parse_compat(const char *label, const char *filename, return opts; } + error_report("'%s' is not a valid char driver", filename); + fail: qemu_opts_del(opts); return NULL; diff --git a/tests/test-char.c b/tests/test-char.c index 018e2eed93..45203f5d7a 100644 --- a/tests/test-char.c +++ b/tests/test-char.c @@ -932,9 +932,10 @@ static void char_null_test(void) static void char_invalid_test(void) { Chardev *chr; - + g_setenv("QTEST_SILENT_ERRORS", "1", 1); chr = qemu_chr_new("label-invalid", "invalid"); g_assert_null(chr); + g_unsetenv("QTEST_SILENT_ERRORS"); } static int chardev_change(void *opaque) |