diff options
-rw-r--r-- | drivers/hid/hidraw.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/hid/hidraw.c b/drivers/hid/hidraw.c index c79578b5a788..c841a8e77339 100644 --- a/drivers/hid/hidraw.c +++ b/drivers/hid/hidraw.c | |||
@@ -259,7 +259,6 @@ static int hidraw_open(struct inode *inode, struct file *file) | |||
259 | 259 | ||
260 | mutex_lock(&minors_lock); | 260 | mutex_lock(&minors_lock); |
261 | if (!hidraw_table[minor]) { | 261 | if (!hidraw_table[minor]) { |
262 | kfree(list); | ||
263 | err = -ENODEV; | 262 | err = -ENODEV; |
264 | goto out_unlock; | 263 | goto out_unlock; |
265 | } | 264 | } |
@@ -285,6 +284,8 @@ static int hidraw_open(struct inode *inode, struct file *file) | |||
285 | out_unlock: | 284 | out_unlock: |
286 | mutex_unlock(&minors_lock); | 285 | mutex_unlock(&minors_lock); |
287 | out: | 286 | out: |
287 | if (err < 0) | ||
288 | kfree(list); | ||
288 | return err; | 289 | return err; |
289 | 290 | ||
290 | } | 291 | } |