summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2016-10-03 13:47:03 +0400
committerPaolo Bonzini <pbonzini@redhat.com>2016-10-04 10:00:26 +0200
commit6a7b2b21008f271e7a91e937e521e22f94579bb9 (patch)
tree79988f140cfe8b8387b0211fc5d6553e429a31bb
parent949055a2549afc4cde06b7972072c7288bb43722 (diff)
downloadfocaccia-qemu-6a7b2b21008f271e7a91e937e521e22f94579bb9.tar.gz
focaccia-qemu-6a7b2b21008f271e7a91e937e521e22f94579bb9.zip
char: update read handler in all cases
In commit ac1b84dd1 (rhbz#1027181), a check was added to only update the
"read handler" when the front-end is opened, because the read callbacks
were not restored when a device is plugged. However, this seems not
correct, the handler is correctly set back on hotplug (in
virtconsole_realize) and the bug can no longer be reproduced.

Calling chr_update_read_handler() allows to fix the mux driver to stop
calling the child handlers (which may be going to be destroyed).

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20161003094704.18087-2-marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--qemu-char.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/qemu-char.c b/qemu-char.c
index 7a85b1f0b3..4b330ea90f 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -469,7 +469,7 @@ void qemu_chr_add_handlers_full(CharDriverState *s,
     s->chr_read = fd_read;
     s->chr_event = fd_event;
     s->handler_opaque = opaque;
-    if (fe_open && s->chr_update_read_handler) {
+    if (s->chr_update_read_handler) {
         s->chr_update_read_handler(s, context);
     }