Blob Blame History Raw
From 9f68be99919871283238e4a12940d9581d724af2 Mon Sep 17 00:00:00 2001
From: David Ostrovsky <david@ostrovsky.org>
Date: Thu, 4 May 2017 19:14:13 +0200
Subject: [PATCH] Use gcd from boost::math::gcd

According to the documentation "Run-time GCD & LCM Determination": [1],
gcd should be consumed from boost::math::gcd.

[1] <http://www.boost.org/doc/libs/1_64_0/libs/math/doc/html/math_toolkit/run_time.html>

Change-Id: I026a4e8ead75399765eb73fa5434a57958676383
Reviewed-on: https://gerrit.libreoffice.org/37260
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
---
 tools/source/generic/fract.cxx | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/tools/source/generic/fract.cxx b/tools/source/generic/fract.cxx
index bc9bef467e86..afcb2e60ba42 100644
--- a/tools/source/generic/fract.cxx
+++ b/tools/source/generic/fract.cxx
@@ -30,6 +30,7 @@
 #include <algorithm>
 #include <cmath>
 
+#include <boost/math/common_factor_rt.hpp>
 #include <boost/rational.hpp>
 
 template<typename T>
@@ -180,8 +181,8 @@ namespace
         T den = r.denominator();
 
         // Avoid overflow and preserve normalization
-        T gcd1 = boost::integer::gcd(i.numerator(), den);
-        T gcd2 = boost::integer::gcd(num, i.denominator());
+        T gcd1 = boost::math::gcd(i.numerator(), den);
+        T gcd2 = boost::math::gcd(num, i.denominator());
 
         bool fail = false;
         fail |= o3tl::checked_multiply(i.numerator() / gcd1, num / gcd2, num);
-- 
2.12.2