| ... | ... | @@ -8388,12 +8388,15 @@ fn fileReadStreamingWindows(file: File, data: []const []u8) File.Reader.Error!us |
| 8388 | 8388 | null, // byte offset |
| 8389 | 8389 | null, // key |
| 8390 | 8390 | )) { |
| 8391 | | .SUCCESS => break :read syscall.finish(), |
| 8391 | .SUCCESS, .END_OF_FILE, .PIPE_BROKEN => break :read syscall.finish(), |
| 8392 | 8392 | .PENDING => break, |
| 8393 | 8393 | .CANCELLED => { |
| 8394 | 8394 | try syscall.checkCancel(); |
| 8395 | 8395 | continue; |
| 8396 | 8396 | }, |
| 8397 | .INVALID_DEVICE_REQUEST => return syscall.fail(error.IsDir), |
| 8398 | .LOCK_NOT_GRANTED => return syscall.fail(error.LockViolation), |
| 8399 | .ACCESS_DENIED => return syscall.fail(error.AccessDenied), |
| 8397 | 8400 | .INVALID_PARAMETER => |err| return syscall.ntstatusBug(err), // streaming read of async mode file |
| 8398 | 8401 | else => |status| return syscall.unexpectedNtstatus(status), |
| 8399 | 8402 | } |
| ... | ... | @@ -8424,6 +8427,8 @@ fn fileReadStreamingWindows(file: File, data: []const []u8) File.Reader.Error!us |
| 8424 | 8427 | |
| 8425 | 8428 | switch (io_status_block.u.Status) { |
| 8426 | 8429 | .SUCCESS, .END_OF_FILE, .PIPE_BROKEN => {}, |
| 8430 | .INVALID_DEVICE_REQUEST => return error.IsDir, |
| 8431 | .LOCK_NOT_GRANTED => return error.LockViolation, |
| 8427 | 8432 | .ACCESS_DENIED => return error.AccessDenied, |
| 8428 | 8433 | else => |status| return windows.unexpectedStatus(status), |
| 8429 | 8434 | } |