aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2002-12-24 02:48:19 +0000
committerDanny Smith <dannysmith@gcc.gnu.org>2002-12-24 02:48:19 +0000
commit2ae1162e06a1e408fc9d4295cef4af53e63acaab (patch)
treeee57a400129ae4bede8b2782e04293e2dd3fd60d
parent94be8403e22d5e6965713e0920c1e451111bc110 (diff)
downloadgcc-2ae1162e06a1e408fc9d4295cef4af53e63acaab.zip
gcc-2ae1162e06a1e408fc9d4295cef4af53e63acaab.tar.gz
gcc-2ae1162e06a1e408fc9d4295cef4af53e63acaab.tar.bz2
basic_file_stdio.cc (__basic_file::_M_open_mode): Don't use O_NONBLOCK if it is not defined.
* config/io/basic_file_stdio.cc (__basic_file::_M_open_mode): Don't use O_NONBLOCK if it is not defined. (__basic_file::open): Don't use fcntl either. From-SVN: r60461
-rw-r--r--libstdc++-v3/ChangeLog6
-rw-r--r--libstdc++-v3/config/io/basic_file_stdio.cc6
2 files changed, 12 insertions, 0 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 3cb1684..d9e1031 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,9 @@
+2002-12-23 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/io/basic_file_stdio.cc (__basic_file::_M_open_mode):
+ Don't use O_NONBLOCK if it is not defined.
+ (__basic_file::open): Don't use fcntl either.
+
2002-12-20 Sylvain Pion <Sylvain.Pion@mpi-sb.mpg.de>
* include/bits/stl_deque.h: Fix typo.
diff --git a/libstdc++-v3/config/io/basic_file_stdio.cc b/libstdc++-v3/config/io/basic_file_stdio.cc
index ff23d98..e378b66 100644
--- a/libstdc++-v3/config/io/basic_file_stdio.cc
+++ b/libstdc++-v3/config/io/basic_file_stdio.cc
@@ -74,7 +74,11 @@ namespace std
if (__testi && !__testo && !__testt && !__testa)
{
strcpy(__c_mode, "r");
+#if defined (O_NONBLOCK)
__p_mode |= O_RDONLY | O_NONBLOCK;
+#else
+ __p_mode |= O_RDONLY;
+#endif
}
if (__testi && __testo && !__testt && !__testa)
{
@@ -151,9 +155,11 @@ namespace std
{
_M_cfile_created = true;
+#if defined (F_SETFL) && defined (O_NONBLOCK)
// Set input to nonblocking for fifos.
if (__mode & ios_base::in)
fcntl(this->fd(), F_SETFL, O_NONBLOCK);
+#endif
__ret = this;
}