* io.c (rb_io_fread): return already read data when system call is

interrupted.  [ruby-talk:97206]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2004-06-24 05:23:44 +00:00
Родитель d7861f7446
Коммит 2f978ec25a
2 изменённых файлов: 8 добавлений и 4 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Thu Jun 24 14:23:29 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_fread): return already read data when system call is
interrupted. [ruby-talk:97206]
Thu Jun 24 01:25:21 2004 Shugo Maeda <shugo@ruby-lang.org>
* version.h: added declarations of ruby_version,
@ -28,7 +33,7 @@ Wed Jun 23 17:37:54 2004 Shugo Maeda <shugo@ruby-lang.org>
Wed Jun 23 01:45:27 2004 Dave Thomas <dave@pragprog.com>
* lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_quotation):
* lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_quotation):
Fix problem with the 'r' being dropped from %r{xxx}
Wed Jun 23 00:10:17 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>

5
io.c
Просмотреть файл

@ -956,12 +956,11 @@ rb_io_fread(ptr, len, f)
#if defined(EWOULDBLOCK) && EWOULDBLOCK != EAGAIN
case EWOULDBLOCK:
#endif
if (len - n >= 0) {
if (len > n) {
clearerr(f);
return len - n;
}
}
return 0;
if (len == n) return 0;
}
*ptr = '\0';
break;