summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tools/source/datetime/duration.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/source/datetime/duration.cxx b/tools/source/datetime/duration.cxx
index 07f79929177f..7140e2b99579 100644
--- a/tools/source/datetime/duration.cxx
+++ b/tools/source/datetime/duration.cxx
@@ -187,8 +187,10 @@ Duration Duration::Mult(sal_Int32 nMult, bool& rbOverflow) const
if (o3tl::checked_multiply(static_cast<sal_uInt64>(maTime.GetHour()), nMult64, nH))
break;
sal_uInt64 nD;
- if (o3tl::checked_multiply(static_cast<sal_uInt64>(mnDays < 0 ? -mnDays : mnDays),
- nMult64, nD))
+ if (o3tl::checked_multiply(
+ mnDays < 0 ? static_cast<sal_uInt64>(-static_cast<sal_Int64>(mnDays))
+ : static_cast<sal_uInt64>(mnDays),
+ nMult64, nD))
break;
if (nN > Time::nanoSecPerSec)
{