diff options
-rw-r--r-- | drivers/media/radio/si470x/radio-si470x-usb.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/media/radio/si470x/radio-si470x-usb.c b/drivers/media/radio/si470x/radio-si470x-usb.c index 392e84fe90ef..ccefdaea4dc5 100644 --- a/drivers/media/radio/si470x/radio-si470x-usb.c +++ b/drivers/media/radio/si470x/radio-si470x-usb.c | |||
@@ -699,7 +699,7 @@ static int si470x_usb_driver_probe(struct usb_interface *intf, | |||
699 | radio->videodev = video_device_alloc(); | 699 | radio->videodev = video_device_alloc(); |
700 | if (!radio->videodev) { | 700 | if (!radio->videodev) { |
701 | retval = -ENOMEM; | 701 | retval = -ENOMEM; |
702 | goto err_intbuffer; | 702 | goto err_urb; |
703 | } | 703 | } |
704 | memcpy(radio->videodev, &si470x_viddev_template, | 704 | memcpy(radio->videodev, &si470x_viddev_template, |
705 | sizeof(si470x_viddev_template)); | 705 | sizeof(si470x_viddev_template)); |
@@ -790,6 +790,8 @@ err_all: | |||
790 | kfree(radio->buffer); | 790 | kfree(radio->buffer); |
791 | err_video: | 791 | err_video: |
792 | video_device_release(radio->videodev); | 792 | video_device_release(radio->videodev); |
793 | err_urb: | ||
794 | usb_free_urb(radio->int_in_urb); | ||
793 | err_intbuffer: | 795 | err_intbuffer: |
794 | kfree(radio->int_in_buffer); | 796 | kfree(radio->int_in_buffer); |
795 | err_radio: | 797 | err_radio: |