diff --git a/ChangeLog b/ChangeLog index ca98d2c695..fab33bebd4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,8 @@ Thu May 27 14:53:13 2004 WATANABE Hirofumi * io.c (rb_io_fwrite): workaround for bcc32's fwrite bug. add errno checking. [ruby-dev:23627] + * io.c (rb_io_fwrite): should check if errnro == ENOENT, too. + Thu May 27 11:25:03 2004 NAKAMURA, Hiroshi * test/csv/test_csv.rb: illegal require module name (../lib/csv.rb). diff --git a/io.c b/io.c index f3b83da7d4..ecc297117d 100644 --- a/io.c +++ b/io.c @@ -400,7 +400,7 @@ rb_io_fwrite(ptr, len, f) long n, r; if ((n = len) <= 0) return n; -#if defined __human68k__ || defined __BORLANDC__ +#if defined __human68k__ do { if (fputc(*ptr++, f) == EOF) { if (ferror(f)) return -1L; @@ -411,7 +411,7 @@ rb_io_fwrite(ptr, len, f) while (errno = 0, ptr += (r = fwrite(ptr, 1, n, f)), (n -= r) > 0) { if (ferror(f) #if defined __BORLANDC__ - || errno == EBAF + || errno == EBADF || errno == ENOENT #endif ) { #ifdef __hpux