Revert "usb-storage: Drop useless null test in usb_msd_handle_data()"
authorGerd Hoffmann <kraxel@redhat.com>
Mon, 21 Jan 2013 10:18:47 +0000 (11:18 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Tue, 22 Jan 2013 10:01:07 +0000 (11:01 +0100)
This reverts commit a1cbfd554e11bb8af38c2f3e1f1574bf4c563cd2.

Test isn't useless.  scsi_req_enqueue() may finish the request (will
actually happen for requests which don't trigger any I/O such as
INQUIRY), then call usb_msd_command_complete() which in turn will
set s->req to NULL after unref'ing it.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
hw/usb/dev-storage.c

index b839798eafc4118d6a5238bbe238048115e7573f..1b87352db01ff9dcae36d6aa878dcc3037631003 100644 (file)
@@ -427,7 +427,7 @@ static void usb_msd_handle_data(USBDevice *dev, USBPacket *p)
             scsi_req_print(s->req);
 #endif
             scsi_req_enqueue(s->req);
-            if (s->req->cmd.xfer != SCSI_XFER_NONE) {
+            if (s->req && s->req->cmd.xfer != SCSI_XFER_NONE) {
                 scsi_req_continue(s->req);
             }
             break;