* io.c (rb_io_close_read): call rb_io_fptr_cleanup() instead of

fptr_finalize() because the fptr has special finalizser if it is a
	  pipe.  [ruby-dev:37757] (3)



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
usa 2009-01-13 09:23:54 +00:00
Родитель fbc4429d72
Коммит c4554d20a6
2 изменённых файлов: 8 добавлений и 2 удалений

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

@ -1,3 +1,9 @@
Tue Jan 13 18:21:44 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (rb_io_close_read): call rb_io_fptr_cleanup() instead of
fptr_finalize() because the fptr has special finalizser if it is a
pipe. [ruby-dev:37757] (3)
Tue Jan 13 18:19:49 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (rb_io_initialize): workaround for Windows. [ruby-dev:37686]
@ -49,7 +55,7 @@ Tue Jan 13 02:54:54 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/socket/extconf.rb: use headers instead of "netdb.h" in checking
getnameinfo() and getaddrinfo() because Windows doesn't have it.
see [ruby-dev:37757].
[ruby-dev:37757] (1)
* ext/socket/sockport.h (SA_LEN): use sockaddr_in6 when defined AF_INET6
if INET6 is not defined. winsock2's getaddrinfo() returns

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

@ -3378,7 +3378,7 @@ rb_io_close_read(VALUE io)
write_io = GetWriteIO(io);
if (io != write_io) {
rb_io_t *wfptr;
fptr_finalize(fptr, Qfalse);
rb_io_fptr_cleanup(fptr, Qfalse);
GetOpenFile(write_io, wfptr);
RFILE(io)->fptr = wfptr;
RFILE(write_io)->fptr = NULL;