open.c (new_unit): Use the right unit number when checking for stdin, stdout, stderr.

* io/open.c (new_unit): Use the right unit number when checking
	for stdin, stdout, stderr.

From-SVN: r107413
This commit is contained in:
Alan Modra 2005-11-23 10:18:11 +00:00 committed by Alan Modra
parent 7d6c1f42b4
commit 1ed1c7ce30
2 changed files with 8 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2005-11-23 Alan Modra <amodra@bigpond.net.au>
* io/open.c (new_unit): Use the right unit number when checking
for stdin, stdout, stderr.
2005-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/24794

View File

@ -339,9 +339,9 @@ new_unit (st_parameter_open *opp, gfc_unit *u, unit_flags * flags)
if ((opp->common.flags & IOPARM_OPEN_HAS_FILE) != 0)
u2 = find_file (opp->file, opp->file_len);
if (u2 != NULL
&& (options.stdin_unit < 0 || u->unit_number != options.stdin_unit)
&& (options.stdout_unit < 0 || u->unit_number != options.stdout_unit)
&& (options.stderr_unit < 0 || u->unit_number != options.stderr_unit))
&& (options.stdin_unit < 0 || u2->unit_number != options.stdin_unit)
&& (options.stdout_unit < 0 || u2->unit_number != options.stdout_unit)
&& (options.stderr_unit < 0 || u2->unit_number != options.stderr_unit))
{
unlock_unit (u2);
generate_error (&opp->common, ERROR_ALREADY_OPEN, NULL);