[GIT] ppl/ppl(pip): Fixed stream state on checked input.

Module: ppl/ppl Branch: pip Commit: d0f6bd037c90676130e9547e5ed909cf6ba8eee9 URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=d0f6bd037c906...
Author: Abramo Bagnara abramo.bagnara@gmail.com Date: Thu Feb 10 16:47:22 2011 +0100
Fixed stream state on checked input.
---
src/checked.cc | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/src/checked.cc b/src/checked.cc index 34c84c2..e428109 100644 --- a/src/checked.cc +++ b/src/checked.cc @@ -337,6 +337,11 @@ input_mpq(mpq_class& to, std::istream& is) { number_struct num_struct; number_struct den_struct; Result r = parse_number(is, num_struct, den_struct); + if (r == V_CVT_STR_UNK) { + is.setstate(is.failbit); + return r; + } + is.clear(is.rdstate() & ~is.failbit); if (r != V_EQ) return r; if (den_struct.base && den_struct.mantissa.empty())
participants (1)
-
Abramo Bagnara