diff --git a/ChangeLog b/ChangeLog index 746adb10e3..7f5e7af1e9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Mon Jul 10 15:27:16 2000 WATANABE Hirofumi + + * io.c (pipe_finalize): should set rb_last_status when pclose(). + Mon Jul 10 09:07:54 2000 Yukihiro Matsumoto * error.c (rb_bug): print version number and such too. diff --git a/io.c b/io.c index 9abffb9519..43338dd274 100644 --- a/io.c +++ b/io.c @@ -1475,13 +1475,16 @@ pipe_finalize(fptr) OpenFile *fptr; { #if !defined (__CYGWIN__) + extern VALUE rb_last_status; + int status; if (fptr->f) { - pclose(fptr->f); + status = pclose(fptr->f); } if (fptr->f2) { - pclose(fptr->f2); + status = pclose(fptr->f2); } fptr->f = fptr->f2 = 0; + rb_last_status = INT2FIX(status); #else fptr_finalize(fptr); #endif