diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | win32/win32.c | 2 |
2 files changed, 6 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Sat Aug 30 19:49:38 2008 NAKAMURA Usaku <usa@ruby-lang.org> + + * win32/win32.c (rb_w32_read): EOF is not error. + ref [ruby-dev:36050] + Sat Aug 30 18:17:40 2008 Nobuyoshi Nakada <nobu@ruby-lang.org> * parse.y (struct token_info): constified. diff --git a/win32/win32.c b/win32/win32.c index ece432f0b..761014057 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -4353,7 +4353,7 @@ rb_w32_read(int fd, void *buf, size_t size) if (err != ERROR_IO_PENDING) { if (err == ERROR_ACCESS_DENIED) errno = EBADF; - else if (err == ERROR_BROKEN_PIPE) { + else if (err == ERROR_BROKEN_PIPE || err == ERROR_HANDLE_EOF) { MTHREAD_ONLY(LeaveCriticalSection(&_pioinfo(fd)->lock)); return 0; } |