summaryrefslogtreecommitdiff
path: root/src/sys/os
diff options
context:
space:
mode:
Diffstat (limited to 'src/sys/os')
-rw-r--r--src/sys/os/os_omar.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/sys/os/os_omar.c b/src/sys/os/os_omar.c
index 9ad3739..8e63ae7 100644
--- a/src/sys/os/os_omar.c
+++ b/src/sys/os/os_omar.c
@@ -258,7 +258,11 @@ initrd_read(struct vop_rw_data *data)
len = MIN(data->len, np->size);
for (int i = 0; i < len; ++i) {
- dest[i] = src[i];
+ if ((i + data->off) >= np->size) {
+ /* End of file */
+ return 0;
+ }
+ dest[i] = src[data->off + i];
}
return len;