Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
static void carlusb_free_driver(struct carlu *ar)
{
static void carlusb_free_driver(struct carlu *ar)
{
+ if (!IS_ERR_OR_NULL(ar)) {
if (ar->event_pipe[0] > -1)
close(ar->event_pipe[0]);
if (ar->event_pipe[0] > -1)
close(ar->event_pipe[0]);
err_out:
carlusb_free_driver(tmp);
err_out:
carlusb_free_driver(tmp);
}
static void carlusb_cancel_rings(struct carlu *ar)
}
static void carlusb_cancel_rings(struct carlu *ar)
int ret = -ENOMEM;
ar = carlusb_open();
int ret = -ENOMEM;
ar = carlusb_open();
+ if (IS_ERR_OR_NULL(ar)) {
+ if (IS_ERR(ar))
+ ret = PTR_ERR(ar);
ret = carlusb_show_devinfo(ar);
if (ret)
ret = carlusb_show_devinfo(ar);
if (ret)
err_out:
carlusb_free_driver(ar);
err("usb device rendezvous failed (%d).\n", ret);
err_out:
carlusb_free_driver(ar);
err("usb device rendezvous failed (%d).\n", ret);
}
void carlusb_close(struct carlu *ar)
}
void carlusb_close(struct carlu *ar)