chardev: handle qmp_chardev_add(KIND_MUX) failure
Cc: Markus Armbruster <armbru@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
a684f3cf9b
commit
ee6ee83de2
|
@ -3271,7 +3271,12 @@ CharDriverState *qemu_chr_new_from_opts(QemuOpts *opts,
|
||||||
backend->kind = CHARDEV_BACKEND_KIND_MUX;
|
backend->kind = CHARDEV_BACKEND_KIND_MUX;
|
||||||
backend->mux->chardev = g_strdup(bid);
|
backend->mux->chardev = g_strdup(bid);
|
||||||
ret = qmp_chardev_add(id, backend, errp);
|
ret = qmp_chardev_add(id, backend, errp);
|
||||||
assert(!error_is_set(errp));
|
if (error_is_set(errp)) {
|
||||||
|
chr = qemu_chr_find(bid);
|
||||||
|
qemu_chr_delete(chr);
|
||||||
|
chr = NULL;
|
||||||
|
goto qapi_out;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
chr = qemu_chr_find(id);
|
chr = qemu_chr_find(id);
|
||||||
|
|
Loading…
Reference in a new issue