summaryrefslogtreecommitdiff
authorKohei Yoshida <kohei.yoshida@suse.com>2011-12-07 15:38:25 (GMT)
committer Kohei Yoshida <kohei.yoshida@suse.com>2011-12-07 15:42:58 (GMT)
commit561f082041c5ede44d9443e534761a79953aedad (patch) (side-by-side diff)
tree616a057cce0c3610dc2b76d1570909db3117763b
parentac40f7d6503533954127e818f2bf009200c1e3f2 (diff)
downloadcore-561f082041c5ede44d9443e534761a79953aedad.zip
core-561f082041c5ede44d9443e534761a79953aedad.tar.gz
fdo#43308: Set the logic straight for "center across selection" setting.
Another unfortunate logic change introduced via DECLARE_LIST removal. Reverting the logic to the original one.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--sc/source/filter/excel/xistyle.cxx12
1 files changed, 3 insertions, 9 deletions
diff --git a/sc/source/filter/excel/xistyle.cxx b/sc/source/filter/excel/xistyle.cxx
index d2d4467..2131095 100644
--- a/sc/source/filter/excel/xistyle.cxx
+++ b/sc/source/filter/excel/xistyle.cxx
@@ -1824,15 +1824,9 @@ void XclImpXFRangeBuffer::SetXF( const ScAddress& rScPos, sal_uInt16 nXFIndex, X
if( pXF && ((pXF->GetHorAlign() == EXC_XF_HOR_CENTER_AS) || (pXF->GetHorAlign() == EXC_XF_HOR_FILL)) )
{
// expand last merged range if this attribute is set repeatedly
- if ( !maMergeList.empty() )
- {
- ScRange* pRange = maMergeList.back();
- if( (pRange->aEnd.Row() == nScRow)
- && (pRange->aEnd.Col() + 1 == nScCol)
- && (eMode == xlXFModeBlank)
- )
- pRange->aEnd.IncCol();
- }
+ ScRange* pRange = maMergeList.empty() ? NULL : maMergeList.back();
+ if (pRange && (pRange->aEnd.Row() == nScRow) && (pRange->aEnd.Col() + 1 == nScCol) && (eMode == xlXFModeBlank))
+ pRange->aEnd.IncCol();
else if( eMode != xlXFModeBlank ) // do not merge empty cells
SetMerge( nScCol, nScRow );
}