Преглед на файлове

usb-redir: Don't try to write to the chardev after a close event

Since we handle close async in a bh, do_write and thus write can get
called after receiving a close event. This patch adds a check to
the usb-redir write callback to not call qemu_chr_fe_write on a closed
backend.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Hans de Goede преди 13 години
родител
ревизия
c1b71a1df6
променени са 1 файла, в които са добавени 4 реда и са изтрити 0 реда
  1. 4 0
      usb-redir.c

+ 4 - 0
usb-redir.c

@@ -225,6 +225,10 @@ static int usbredir_write(void *priv, uint8_t *data, int count)
 {
 {
     USBRedirDevice *dev = priv;
     USBRedirDevice *dev = priv;
 
 
+    if (!dev->cs->opened) {
+        return 0;
+    }
+
     return qemu_chr_fe_write(dev->cs, data, count);
     return qemu_chr_fe_write(dev->cs, data, count);
 }
 }