aboutsummaryrefslogtreecommitdiff
path: root/src/cyber_file.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cyber_file.c')
-rw-r--r--src/cyber_file.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/cyber_file.c b/src/cyber_file.c
index deaed39..ad0fa21 100644
--- a/src/cyber_file.c
+++ b/src/cyber_file.c
@@ -41,11 +41,11 @@ ssize_t cyber_file_read(struct file * file, char __user * buffer, size_t size, l
{
int const cyberChunks = (size + PAGE_SIZE - 1) / PAGE_SIZE;
int const cybersPerChunk = (size > PAGE_SIZE ? PAGE_SIZE : size) / 8;
- int remainingChunks = cyberChunks;
+ int copiedCybers = 0;
- for(; remainingChunks > 0; --remainingChunks)
+ for(; copiedCybers < cyberChunks; ++copiedCybers)
{
- if(copy_to_user(buffer, cyberSpace, cybersPerChunk * 8))
+ if(copy_to_user(buffer + copiedCybers * PAGE_SIZE, cyberSpace, cybersPerChunk * 8))
{
return -EFAULT;
}