diff options
author | Thierry MERLE <thierry.merle@free.fr> | 2007-12-12 22:25:23 +0100 |
---|---|---|
committer | Thierry MERLE <thierry.merle@free.fr> | 2007-12-12 22:25:23 +0100 |
commit | af0e3689d502650b164b118360f25423eb0b1797 (patch) | |
tree | 9dfb6e28b335c40a86266e576e292aa164e5b916 /linux/drivers/media/video/usbvision | |
parent | e957db9edd45ce247ae6eda39c5e0cb07d3230fa (diff) | |
download | mediapointer-dvb-s2-af0e3689d502650b164b118360f25423eb0b1797.tar.gz mediapointer-dvb-s2-af0e3689d502650b164b118360f25423eb0b1797.tar.bz2 |
media-video-usbvision-add-mutex_unlock-to-error-paths-fix
From: Andrew Morton <akpm@linux-foundation.org>
Cc: Daniel Walker <dwalker@mvista.com>
Cc: Mauro Carvalho Chehab <mchehab@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Thierry MERLE <thierry.merle@free.fr>
Diffstat (limited to 'linux/drivers/media/video/usbvision')
-rw-r--r-- | linux/drivers/media/video/usbvision/usbvision-video.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/linux/drivers/media/video/usbvision/usbvision-video.c b/linux/drivers/media/video/usbvision/usbvision-video.c index 92d2a92fd..e0b079baf 100644 --- a/linux/drivers/media/video/usbvision/usbvision-video.c +++ b/linux/drivers/media/video/usbvision/usbvision-video.c @@ -1339,8 +1339,8 @@ static int usbvision_radio_open(struct inode *inode, struct file *file) errCode = usbvision_set_alternate(usbvision); if (errCode < 0) { usbvision->last_error = errCode; - mutex_unlock(&usbvision->lock); - return -EBUSY; + errCode = -EBUSY; + goto out; } // If so far no errors then we shall start the radio @@ -1360,6 +1360,7 @@ static int usbvision_radio_open(struct inode *inode, struct file *file) usbvision->initialized = 0; } } +out: mutex_unlock(&usbvision->lock); return errCode; } |