diff options
-rw-r--r-- | writerfilter/source/resourcemodel/Fraction.cxx | 6 |
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; } |