Kernel: Return bytes written if sys$write() fails after writing some

If we wrote anything we should just inform userspace that we did,
and not worry about the error code. Userspace can call us again if
it wants, and we'll give them the error then.
This commit is contained in:
Andreas Kling 2020-02-29 18:42:35 +01:00
parent 70b940c307
commit 4badef8137

View file

@ -1695,8 +1695,8 @@ ssize_t Process::do_write(FileDescription& description, const u8* data, int data
dbg() << " -> write returned " << rc;
#endif
if (rc < 0) {
// FIXME: Support returning partial nwritten with errno.
ASSERT(nwritten == 0);
if (nwritten)
return nwritten;
return rc;
}
if (rc == 0)