@@ -206,11 +206,12 @@ if (length > LONG_MAX) @throw [OFOutOfRangeException exception]; if ((ret = Read(_handle, buffer, length)) < 0) @throw [OFReadFailedException exceptionWithObject: self - requestedLength: length]; + requestedLength: length + errNo: EIO]; #endif if (ret == 0) _atEndOfStream = true; @@ -248,11 +249,12 @@ if (length > SSIZE_MAX) @throw [OFOutOfRangeException exception]; if (Write(_handle, (void *)buffer, length) != (LONG)length) @throw [OFWriteFailedException exceptionWithObject: self - requestedLength: length]; + requestedLength: length + errNo: EIO]; #endif } #if !defined(OF_WINDOWS) && !defined(OF_MORPHOS) - (int)fileDescriptorForReading