[Libreoffice-commits] core.git: Branch 'libreoffice-4-4' - sc/source
Matthew J. Francis
mjay.francis at gmail.com
Thu Nov 27 05:33:53 PST 2014
sc/source/filter/excel/xetable.cxx | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
New commits:
commit e678a333c1f4a7a1bf8594d888938e598ed2f6a1
Author: Matthew J. Francis <mjay.francis at gmail.com>
Date: Thu Nov 27 12:08:07 2014 +0800
fdo#86687 Avoid deadlock updating progress bar
Change-Id: I13f93372fedc67bfd25d36a5bee10a004fe9f8f6
Reviewed-on: https://gerrit.libreoffice.org/13147
Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
Tested-by: Michael Meeks <michael.meeks at collabora.com>
diff --git a/sc/source/filter/excel/xetable.cxx b/sc/source/filter/excel/xetable.cxx
index 01c286d..66df5d6 100644
--- a/sc/source/filter/excel/xetable.cxx
+++ b/sc/source/filter/excel/xetable.cxx
@@ -2087,9 +2087,12 @@ void XclExpRowBuffer::Finalize( XclExpDefaultRowData& rDefRowData, const ScfUInt
for ( itr = itrBeg; itr != itrEnd; ++itr, ++nIdx )
pTasks[ nIdx % nThreads ]->push_back( itr->second.get() );
- for ( size_t i = 0; i < nThreads; i++ )
+ for ( size_t i = 1; i < nThreads; i++ )
rPool.pushTask( pTasks[ i ] );
+ // Progress bar updates must be synchronous to avoid deadlock
+ pTasks[0]->doWork();
+
rPool.waitUntilEmpty();
}
More information about the Libreoffice-commits
mailing list