diff options
| author | Hans de Goede <hdegoede@redhat.com> | 2011-06-24 14:26:18 +0200 |
|---|---|---|
| committer | Gerd Hoffmann <kraxel@redhat.com> | 2011-07-05 15:09:02 +0200 |
| commit | 45b9fd348061ab793cf4521bb3621f07a5bd7bf6 (patch) | |
| tree | c6788cae4d589bbe8cd93ee7b30d48e518535abf /hw/usb.c | |
| parent | fbf9db645765a22b796e128967bebb64c073938a (diff) | |
| download | focaccia-qemu-45b9fd348061ab793cf4521bb3621f07a5bd7bf6.tar.gz focaccia-qemu-45b9fd348061ab793cf4521bb3621f07a5bd7bf6.zip | |
usb: assert on calling usb_attach(port, NULL) on a port without a dev
with the "usb-ehci: cleanup port reset handling" patch in place no callers are calling usb_attach(port, NULL) for a port where port->dev is NULL. Doing that makes no sense as that causes the port detach op to get called for a port with nothing attached. Add an assert that port->dev != NULL when dev == NULL, and remove the check for not having a port->dev in the dev == NULL case. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/usb.c')
| -rw-r--r-- | hw/usb.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/hw/usb.c b/hw/usb.c index 735ffd1966..27a983ca5c 100644 --- a/hw/usb.c +++ b/hw/usb.c @@ -40,12 +40,11 @@ void usb_attach(USBPort *port, USBDevice *dev) } else { /* detach */ dev = port->dev; + assert(dev); port->ops->detach(port); - if (dev) { - usb_send_msg(dev, USB_MSG_DETACH); - dev->port = NULL; - port->dev = NULL; - } + usb_send_msg(dev, USB_MSG_DETACH); + dev->port = NULL; + port->dev = NULL; } } |