diff options
Diffstat (limited to 'drivers/media/video/ov511.c')
-rw-r--r-- | drivers/media/video/ov511.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/media/video/ov511.c b/drivers/media/video/ov511.c index 3d3c48db45d9..2576ded2b9c5 100644 --- a/drivers/media/video/ov511.c +++ b/drivers/media/video/ov511.c | |||
@@ -3591,7 +3591,7 @@ static int | |||
3591 | ov51x_init_isoc(struct usb_ov511 *ov) | 3591 | ov51x_init_isoc(struct usb_ov511 *ov) |
3592 | { | 3592 | { |
3593 | struct urb *urb; | 3593 | struct urb *urb; |
3594 | int fx, err, n, size; | 3594 | int fx, err, n, i, size; |
3595 | 3595 | ||
3596 | PDEBUG(3, "*** Initializing capture ***"); | 3596 | PDEBUG(3, "*** Initializing capture ***"); |
3597 | 3597 | ||
@@ -3662,6 +3662,8 @@ ov51x_init_isoc(struct usb_ov511 *ov) | |||
3662 | urb = usb_alloc_urb(FRAMES_PER_DESC, GFP_KERNEL); | 3662 | urb = usb_alloc_urb(FRAMES_PER_DESC, GFP_KERNEL); |
3663 | if (!urb) { | 3663 | if (!urb) { |
3664 | err("init isoc: usb_alloc_urb ret. NULL"); | 3664 | err("init isoc: usb_alloc_urb ret. NULL"); |
3665 | for (i = 0; i < n; i++) | ||
3666 | usb_free_urb(ov->sbuf[i].urb); | ||
3665 | return -ENOMEM; | 3667 | return -ENOMEM; |
3666 | } | 3668 | } |
3667 | ov->sbuf[n].urb = urb; | 3669 | ov->sbuf[n].urb = urb; |