USB: serial: ir-usb: Silence harmless uninitialized variable warning
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 29 Jan 2020 17:30:37 +0000 (20:30 +0300)
committerJohan Hovold <johan@kernel.org>
Mon, 10 Feb 2020 09:06:51 +0000 (10:06 +0100)
The "actual_length" variable might be uninitialized on some failure
paths.  It's harmless but static analysis tools like Smatch complain
and at runtime the UBSan tool will likely complain as well.

Fixes: e7542bc382f8 ("USB: serial: ir-usb: make set_termios synchronous")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Johan Hovold <johan@kernel.org>
drivers/usb/serial/ir-usb.c

index 79d0586..172261a 100644 (file)
@@ -448,7 +448,7 @@ static void ir_set_termios(struct tty_struct *tty,
                        usb_sndbulkpipe(udev, port->bulk_out_endpointAddress),
                        transfer_buffer, 1, &actual_length, 5000);
        if (ret || actual_length != 1) {
-               if (actual_length != 1)
+               if (!ret)
                        ret = -EIO;
                dev_err(&port->dev, "failed to change line speed: %d\n", ret);
        }