aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libstdc++-v3/ChangeLog8
-rw-r--r--libstdc++-v3/include/bits/istream.tcc10
2 files changed, 8 insertions, 10 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 959e136..9caf65a 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,11 @@
+2003-09-22 Petur Runolfsson <peturr02@ru.is>
+
+ * include/bits/istream.tcc (basic_istream::read,
+ basic_istream::readsome, basic_istream::putback,
+ basic_istream::unget, operator>>(basic_istream, CharT)):
+ Avoid redundant setstate(failbit) calls when sentry::operator bool()
+ returns false.
+
2003-09-22 Carlo Wood <carlo@alinoe.com>
PR libstdc++/12365
diff --git a/libstdc++-v3/include/bits/istream.tcc b/libstdc++-v3/include/bits/istream.tcc
index 543d94d..e6677c5 100644
--- a/libstdc++-v3/include/bits/istream.tcc
+++ b/libstdc++-v3/include/bits/istream.tcc
@@ -798,8 +798,6 @@ namespace std
__throw_exception_again;
}
}
- else
- this->setstate(ios_base::failbit);
return *this;
}
@@ -834,8 +832,6 @@ namespace std
__throw_exception_again;
}
}
- else
- this->setstate(ios_base::failbit);
return _M_gcount;
}
@@ -868,8 +864,6 @@ namespace std
__throw_exception_again;
}
}
- else
- this->setstate(ios_base::failbit);
return *this;
}
@@ -902,8 +896,6 @@ namespace std
__throw_exception_again;
}
}
- else
- this->setstate(ios_base::failbit);
return *this;
}
@@ -1014,8 +1006,6 @@ namespace std
__throw_exception_again;
}
}
- else
- __in.setstate(ios_base::failbit);
return __in;
}