X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=flower%2Frational.cc;h=4205b1d683042153a4fe41dfa6651bb343c75d70;hb=1c4ee4f6b4e6f31602eff804e2ab66d6e658a585;hp=0e3ab3069488885d93ed69681aefe75d7cc46808;hpb=e42585017a01fd02f6353b994cf0c87b03a7bb2e;p=lilypond.git diff --git a/flower/rational.cc b/flower/rational.cc index 0e3ab30694..4205b1d683 100644 --- a/flower/rational.cc +++ b/flower/rational.cc @@ -3,7 +3,7 @@ source file of the Flower Library - (c) 1997--2006 Han-Wen Nienhuys + (c) 1997--2007 Han-Wen Nienhuys */ #include "rational.hh" @@ -50,7 +50,9 @@ Rational::abs () const Rational Rational::trunc_rat () const { - return Rational (num_ - (num_ % den_), den_); + if (is_infinity()) + return *this; + return Rational ((num_ - (num_ % den_)) * sign_, den_); } Rational::Rational () @@ -79,6 +81,7 @@ void Rational::set_infinite (int s) { sign_ = ::sign (s) * 2; + num_ = 1; } Rational