浏览代码

Kernel: "Succeed" quietly for zero-length read() and write().

Andreas Kling 6 年之前
父节点
当前提交
679ac386eb
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      Kernel/Process.cpp

+ 4 - 0
Kernel/Process.cpp

@@ -822,6 +822,8 @@ ssize_t Process::sys$write(int fd, const byte* data, ssize_t size)
 {
     if (size < 0)
         return -EINVAL;
+    if (size == 0)
+        return 0;
     if (!validate_read(data, size))
         return -EFAULT;
 #ifdef DEBUG_IO
@@ -876,6 +878,8 @@ ssize_t Process::sys$read(int fd, byte* buffer, ssize_t size)
 {
     if (size < 0)
         return -EINVAL;
+    if (size == 0)
+        return 0;
     if (!validate_write(buffer, size))
         return -EFAULT;
 #ifdef DEBUG_IO