diff options
-rw-r--r-- | drivers/hid/hidraw.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/hid/hidraw.c b/drivers/hid/hidraw.c index 47d70c523d9..9eaf6ae5f97 100644 --- a/drivers/hid/hidraw.c +++ b/drivers/hid/hidraw.c | |||
@@ -244,6 +244,10 @@ static long hidraw_ioctl(struct file *file, unsigned int cmd, | |||
244 | 244 | ||
245 | mutex_lock(&minors_lock); | 245 | mutex_lock(&minors_lock); |
246 | dev = hidraw_table[minor]; | 246 | dev = hidraw_table[minor]; |
247 | if (!dev) { | ||
248 | ret = -ENODEV; | ||
249 | goto out; | ||
250 | } | ||
247 | 251 | ||
248 | switch (cmd) { | 252 | switch (cmd) { |
249 | case HIDIOCGRDESCSIZE: | 253 | case HIDIOCGRDESCSIZE: |
@@ -317,6 +321,7 @@ static long hidraw_ioctl(struct file *file, unsigned int cmd, | |||
317 | 321 | ||
318 | ret = -ENOTTY; | 322 | ret = -ENOTTY; |
319 | } | 323 | } |
324 | out: | ||
320 | mutex_unlock(&minors_lock); | 325 | mutex_unlock(&minors_lock); |
321 | return ret; | 326 | return ret; |
322 | } | 327 | } |