From d70d13acb5b4fa124c90a96cacaa993fa0c64283 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 14 Mar 2007 13:14:58 +0100 Subject: unix.c (regular_file): For ACTION_UNSPECIFIED retry with O_RDONLY even if errno is EROFS. * io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with O_RDONLY even if errno is EROFS. From-SVN: r122914 --- libgfortran/io/unix.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'libgfortran/io') diff --git a/libgfortran/io/unix.c b/libgfortran/io/unix.c index 08f32878..b58df51 100644 --- a/libgfortran/io/unix.c +++ b/libgfortran/io/unix.c @@ -1213,7 +1213,7 @@ regular_file (st_parameter_open *opp, unit_flags *flags) break; case STATUS_REPLACE: - crflag = O_CREAT | O_TRUNC; + crflag = O_CREAT | O_TRUNC; break; default: @@ -1229,14 +1229,14 @@ regular_file (st_parameter_open *opp, unit_flags *flags) mode = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH; fd = open (path, rwflag | crflag, mode); if (flags->action != ACTION_UNSPECIFIED) - return fd; + return fd; if (fd >= 0) { flags->action = ACTION_READWRITE; return fd; } - if (errno != EACCES) + if (errno != EACCES && errno != EROFS) return fd; /* retry for read-only access */ -- cgit v1.1