From: Eric Sesterhenn Date: Mon, 26 Jun 2006 22:57:42 +0000 (+0200) Subject: [PATCH] USB: fix pointer dereference in drivers/usb/misc/usblcd X-Git-Tag: v2.6.18-rc2~97^2~18 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=053be305d3a5ae0152991f25c6579127fb48710c;p=linux-2.6 [PATCH] USB: fix pointer dereference in drivers/usb/misc/usblcd coverity spotted (id #185) that we still use urb, if the allocation fails in the error path. This patch fixes this by returning directly. Signed-off-by: Eric Sesterhenn Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/misc/usblcd.c b/drivers/usb/misc/usblcd.c index c82c402285..e095772dd8 100644 --- a/drivers/usb/misc/usblcd.c +++ b/drivers/usb/misc/usblcd.c @@ -200,10 +200,8 @@ static ssize_t lcd_write(struct file *file, const char __user * user_buffer, siz /* create a urb, and a buffer for it, and copy the data to the urb */ urb = usb_alloc_urb(0, GFP_KERNEL); - if (!urb) { - retval = -ENOMEM; - goto error; - } + if (!urb) + return -ENOMEM; buf = usb_buffer_alloc(dev->udev, count, GFP_KERNEL, &urb->transfer_dma); if (!buf) {