diff options
-rw-r--r-- | sw/source/filter/xml/xmlmeta.cxx | 7 |
1 files changed, 5 insertions, 2 deletions
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 ); } |