summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-21 17:16:21 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2004-05-21 17:16:21 +0000
commit55943b4d758ee60bcf1e11b5da019360e877cd14 (patch)
tree55b8072493213a8aa900cb887cb8672c28559d08
parentc0c67e38205634f3124de7f98e50844b5453f486 (diff)
downloadppe42-gcc-55943b4d758ee60bcf1e11b5da019360e877cd14.tar.gz
ppe42-gcc-55943b4d758ee60bcf1e11b5da019360e877cd14.zip
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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82103 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libstdc++-v3/ChangeLog5
-rw-r--r--libstdc++-v3/include/bits/istream.tcc13
2 files changed, 9 insertions, 9 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 1baf1dede9b..fe58a1ea241 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -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<>&,
diff --git a/libstdc++-v3/include/bits/istream.tcc b/libstdc++-v3/include/bits/istream.tcc
index 5469005a67f..b9dd0b1828e 100644
--- a/libstdc++-v3/include/bits/istream.tcc
+++ b/libstdc++-v3/include/bits/istream.tcc
@@ -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(...)
OpenPOWER on IntegriCloud