diff options
author | Danny Smith <dannysmith@users.sourceforge.net> | 2002-12-24 02:48:19 +0000 |
---|---|---|
committer | Danny Smith <dannysmith@gcc.gnu.org> | 2002-12-24 02:48:19 +0000 |
commit | 2ae1162e06a1e408fc9d4295cef4af53e63acaab (patch) | |
tree | ee57a400129ae4bede8b2782e04293e2dd3fd60d | |
parent | 94be8403e22d5e6965713e0920c1e451111bc110 (diff) | |
download | gcc-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/ChangeLog | 6 | ||||
-rw-r--r-- | libstdc++-v3/config/io/basic_file_stdio.cc | 6 |
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; } |