X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=flower%2Frational.cc;h=4205b1d683042153a4fe41dfa6651bb343c75d70;hb=5186e9aa42b82929bc91c7ab0c2408f0d8acf5db;hp=0e3ab3069488885d93ed69681aefe75d7cc46808;hpb=7b5a9de4af9ec29ce4e7ef3166974da1dcdfc302;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