diff options
-rw-r--r-- | drivers/input/touchscreen/edt-ft5x06.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/input/touchscreen/edt-ft5x06.c b/drivers/input/touchscreen/edt-ft5x06.c index b06a5e3a665e..64957770b522 100644 --- a/drivers/input/touchscreen/edt-ft5x06.c +++ b/drivers/input/touchscreen/edt-ft5x06.c | |||
@@ -566,9 +566,12 @@ static ssize_t edt_ft5x06_debugfs_raw_data_read(struct file *file, | |||
566 | } | 566 | } |
567 | 567 | ||
568 | read = min_t(size_t, count, tsdata->raw_bufsize - *off); | 568 | read = min_t(size_t, count, tsdata->raw_bufsize - *off); |
569 | error = copy_to_user(buf, tsdata->raw_buffer + *off, read); | 569 | if (copy_to_user(buf, tsdata->raw_buffer + *off, read)) { |
570 | if (!error) | 570 | error = -EFAULT; |
571 | *off += read; | 571 | goto out; |
572 | } | ||
573 | |||
574 | *off += read; | ||
572 | out: | 575 | out: |
573 | mutex_unlock(&tsdata->mutex); | 576 | mutex_unlock(&tsdata->mutex); |
574 | return error ?: read; | 577 | return error ?: read; |