summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--writerfilter/source/resourcemodel/Fraction.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/writerfilter/source/resourcemodel/Fraction.cxx b/writerfilter/source/resourcemodel/Fraction.cxx
index 1f24bb3e5b51..ba76985150a4 100644
--- a/writerfilter/source/resourcemodel/Fraction.cxx
+++ b/writerfilter/source/resourcemodel/Fraction.cxx
@@ -79,9 +79,11 @@ Fraction::~Fraction()
void Fraction::init(sal_Int32 nNumerator, sal_Int32 nDenominator)
{
- sal_uInt32 nGCD = gcd(abs(nNumerator), abs(nDenominator));
+ // fdo#41068 pass non-negative numbers to gcd
+ sal_Int32 const nGCD = gcd(abs(nNumerator), abs(nDenominator));
- mnNumerator = nNumerator/ nGCD;
+ // fdo#76803 do signed division
+ mnNumerator = nNumerator / nGCD;
mnDenominator = nDenominator / nGCD;
}