diff options
author | Zolnai Tamás <tamas.zolnai@collabora.com> | 2014-01-20 13:44:46 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-01-21 09:01:18 +0000 |
commit | 7e31667cd6d83d76b641462118ae05ec3c19f4b5 (patch) | |
tree | a2f322d114eddd7c5995dd4228a9105215494153 /writerfilter/source | |
parent | 97269ea7b1a16bb0dd692307c903e63888545efa (diff) |
fdo#73389 Writer does not show a docx-document with nested table correctly
The table manager can work with more table simultaneously
and so m_aCellWidths contains more table's properties.Only one
item of it belongs to the current table (getCurrentCellwidths).
Regression from 74c5ed19f430327988194cdcd6bdff09591a93fa
(cherry picked from commit d0c383256ef72d5212d8e2db77582d0ebe417209)
Conflicts:
sw/qa/extras/ooxmlimport/ooxmlimport.cxx
Change-Id: I93efac0c004af1b2524c955ffb20c3ecd74a2920
Reviewed-on: https://gerrit.libreoffice.org/7543
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'writerfilter/source')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapperTableManager.cxx | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/writerfilter/source/dmapper/DomainMapperTableManager.cxx b/writerfilter/source/dmapper/DomainMapperTableManager.cxx index c4b24a7e1a6a..cc7d1196661f 100644 --- a/writerfilter/source/dmapper/DomainMapperTableManager.cxx +++ b/writerfilter/source/dmapper/DomainMapperTableManager.cxx @@ -142,24 +142,17 @@ bool DomainMapperTableManager::sprm(Sprm & rSprm) */ bool bFixed = true; sal_Int32 nRowFixedWidth = 0; - if (!m_aCellWidths.empty()) + IntVectorPtr pCellWidths = getCurrentCellWidths(); + // Step 1. Check whether all cells have fixed widths in the given row of table. + for (std::vector<sal_Int32>::const_iterator aValIter = pCellWidths->begin(); aValIter != pCellWidths->end(); ++aValIter) { - // Step 1. Check whether all cells have fixed widths in the given row of table. - ::std::vector< IntVectorPtr >::iterator itr; - for (itr = m_aCellWidths.begin(); itr != m_aCellWidths.end(); ++itr ) + if (*aValIter == -1) { - IntVectorPtr itrVal = (*itr); - for (std::vector<sal_Int32>::const_iterator aValIter = itrVal->begin(); aValIter != itrVal->end(); ++aValIter) - { - if (*aValIter == -1) - { - bFixed = false; - break; - } - // Sum the width of cells to find the total width of given row - nRowFixedWidth += (*aValIter); - } + bFixed = false; + break; } + // Sum the width of cells to find the total width of given row + nRowFixedWidth += (*aValIter); } // Check whether the total width of given row is compared with the maximum value of rows (m_nMaxFixedWidth). |