summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiam Merwick <liam.merwick@oracle.com>2019-02-06 13:36:50 +0000
committerGerd Hoffmann <kraxel@redhat.com>2019-02-20 09:41:23 +0100
commit7cb513aa34fe5639c71223f06b2b6c7934815317 (patch)
tree7f8526d8af934b86b0c8cea6a2c0f8872fd0b00a
parent92cf34279ce907cabf6cb0626ad8a9076eeab9b2 (diff)
downloadqemu-7cb513aa34fe5639c71223f06b2b6c7934815317.zip
xhci: check device is not NULL before calling usb_ep_get()
Signed-off-by: Liam Merwick <liam.merwick@oracle.com> Message-id: 1549460216-25808-4-git-send-email-liam.merwick@oracle.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-rw-r--r--hw/usb/hcd-xhci.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
index 99b83aaa9e..ec28bee319 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -3276,10 +3276,10 @@ static USBEndpoint *xhci_epid_to_usbep(XHCIEPContext *epctx)
return NULL;
}
uport = epctx->xhci->slots[epctx->slotid - 1].uport;
- token = (epctx->epid & 1) ? USB_TOKEN_IN : USB_TOKEN_OUT;
- if (!uport) {
+ if (!uport || !uport->dev) {
return NULL;
}
+ token = (epctx->epid & 1) ? USB_TOKEN_IN : USB_TOKEN_OUT;
return usb_ep_get(uport->dev, token, epctx->epid >> 1);
}