istream.tcc (ignore): Remove redundant line.
authorPaolo Carlini <pcarlini@suse.de>
Fri, 21 May 2004 17:16:21 +0000 (17:16 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Fri, 21 May 2004 17:16:21 +0000 (17:16 +0000)
2004-05-21  Paolo Carlini  <pcarlini@suse.de>

* include/bits/istream.tcc (ignore): Remove redundant line.
(readsome): Tidy, closely following 27.6.1.3, p30.

From-SVN: r82103

libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/istream.tcc

index 1baf1dede9bec729be744453b4d8c106125424e6..fe58a1ea241b171102b0f436190d25d37854f690 100644 (file)
@@ -1,3 +1,8 @@
+2004-05-21  Paolo Carlini  <pcarlini@suse.de>
+
+       * include/bits/istream.tcc (ignore): Remove redundant line.
+       (readsome): Tidy, closely following 27.6.1.3, p30.
+
 2004-05-20  Paolo Carlini  <pcarlini@suse.de>
 
        * include/bits/istream.tcc (operator>>(basic_istream<>&,
index 5469005a67fdd04649de863cd236bc6e7de3c8f6..b9dd0b1828e99ad9448deee630751b63ca943054 100644 (file)
@@ -659,7 +659,6 @@ namespace std
              __streambuf_type* __sb = this->rdbuf();
              int_type __c;
 
-             __n = std::min(__n, numeric_limits<streamsize>::max());
              while (_M_gcount < __n
                     && !traits_type::eq_int_type(__c = __sb->sbumpc(), __eof))
                {
@@ -740,14 +739,10 @@ namespace std
          try
            {
              // Cannot compare int_type with streamsize generically.
-             streamsize __num = this->rdbuf()->in_avail();
-             if (__num >= 0)
-               {
-                 __num = std::min(__num, __n);
-                 if (__num)
-                   _M_gcount = this->rdbuf()->sgetn(__s, __num);
-               }
-             else
+             const streamsize __num = this->rdbuf()->in_avail();
+             if (__num > 0)
+               _M_gcount = this->rdbuf()->sgetn(__s, std::min(__num, __n));
+             else if (__num == -1)
                __err |= ios_base::eofbit;
            }
          catch(...)