From: Mumit Khan Date: Tue, 18 Nov 1997 16:47:23 +0000 (+0000) Subject: close.c (f_exit): Reset f__init so that f_clos does not (incorrectly) think there... X-Git-Tag: releases/egcs-1.0.0~109 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ee51cb8ea5aefa95c70c842729eb200ec0ee015b;p=thirdparty%2Fgcc.git close.c (f_exit): Reset f__init so that f_clos does not (incorrectly) think there is an I/O... * libI77/close.c (f_exit): Reset f__init so that f_clos does not (incorrectly) think there is an I/O recursion when program is interrupted. From-SVN: r16564 --- diff --git a/gcc/f/runtime/ChangeLog.egcs b/gcc/f/runtime/ChangeLog.egcs index 8c88104a30e2..c138a11e8aae 100644 --- a/gcc/f/runtime/ChangeLog.egcs +++ b/gcc/f/runtime/ChangeLog.egcs @@ -1,3 +1,9 @@ +Tue Nov 18 09:49:04 1997 Mumit Khan (kahn@xraylity.wisc.edu) + + * libI77/close.c (f_exit): Reset f__init so that f_clos does not + (incorrectly) think there is an I/O recursion when program is + interrupted. + Sat Nov 1 18:03:42 1997 Jeffrey A Law (law@cygnus.com) * libF77/signal_.c: Undo last change until we can fix it right. diff --git a/gcc/f/runtime/libI77/close.c b/gcc/f/runtime/libI77/close.c index 691f931a3c08..93e9198ed0b3 100644 --- a/gcc/f/runtime/libI77/close.c +++ b/gcc/f/runtime/libI77/close.c @@ -75,6 +75,10 @@ f_exit(void) static cllist xx; if (! (f__init & 1)) return; /* Not initialized, so no open units. */ + /* no more I/O to be done. If this is not done, then if the + program is interrupted during I/O, f_clos thinks, incorrectly, + that there is an I/O recursion. */ + f__init &= ~2; if (!xx.cerr) { xx.cerr=1; xx.csta=NULL;