[Libreoffice-commits] core.git: sw/source
Caolán McNamara (via logerrit)
logerrit at kemper.freedesktop.org
Sat May 30 13:39:47 UTC 2020
sw/source/filter/xml/xmlmeta.cxx | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
New commits:
commit cac4d3b9c2790cfa6575f55aa4052efe88779056
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Fri May 29 20:38:54 2020 +0100
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Sat May 30 15:39:09 2020 +0200
ofz#22775 Integer-overflow
Change-Id: I616350ce96e83f92beac711a59077815ff00fe50
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/95172
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sw/source/filter/xml/xmlmeta.cxx b/sw/source/filter/xml/xmlmeta.cxx
index 10079d9f64ef..423bb25805a1 100644
--- a/sw/source/filter/xml/xmlmeta.cxx
+++ b/sw/source/filter/xml/xmlmeta.cxx
@@ -143,6 +143,7 @@ void SwXMLImport::SetStatistics(
// and autostyles.
bool bSetFallback = true;
sal_Int32 nProgressReference = sal_Int32(); // silence C4701
+ const sal_Int32 nProgressReferenceWriggleRoom = 3 * PROGRESS_BAR_STEP;
if (nTokens & XML_TOK_META_STAT_PARA)
{
nProgressReference = static_cast<sal_Int32>(aDocStat.nPara);
@@ -150,10 +151,12 @@ void SwXMLImport::SetStatistics(
}
else if (nTokens & XML_TOK_META_STAT_PAGE)
bSetFallback = o3tl::checked_multiply<sal_Int32>(aDocStat.nPage, 10, nProgressReference);
+ if (!bSetFallback)
+ bSetFallback = o3tl::checked_add(nProgressReference, nProgressReferenceWriggleRoom, nProgressReference);
if (bSetFallback)
- nProgressReference = 250;
+ nProgressReference = 250 + nProgressReferenceWriggleRoom;
ProgressBarHelper* pProgress = GetProgressBarHelper();
- pProgress->SetReference( nProgressReference + 3*PROGRESS_BAR_STEP );
+ pProgress->SetReference(nProgressReference);
pProgress->SetValue( 0 );
}
More information about the Libreoffice-commits
mailing list